数据库高级数据库学习--上机练习7(Transact-SQL 函数定义和调用)
上机练习7 在Transact SQL中,有一类特殊的自定义函数,其返回值为一张表,该类自定义函数被称作内嵌(联)表值函数,其基本语句格式如下: CREATE FUNCTION函数名称[( {@参数名称 [AS] 标量数据类型}[,...n])] RETURNS TABLE [AS] RETURN [{SELECT 语句}] 试采用该类自定义函数完成下列操作:
1、 创建一个不带输入参数的表值函数返回所有学生信息。 CREATE FUNCTION studentInformation() RETURNS TABLE AS RETURN SELECT * FROM Student
2、 创建一个自定义函数,实现输入学生姓名,查询对应的学号。如果存在多个学号,则输出全部结果。 CREATE FUNCTION findSno(@Sna AS char(10)) RETURNS TABLE AS RETURN SELECT Sno FROM Student WHERE Sname=@Sna DECLARE @Sname char(10) SET @Sname = '张得民' SELECT * FROM dbo.findSno(@Sname);
3、 创建一个自定义函数实现输入课程名查询选修了该课程的学号及其成绩。 CREATE FUNCTION findSnoGrade(@Cna AS char(10)) RETURNS TABLE AS RETURN SELECT Sno,CScore FROM Score,Course WHERE Cname=@Cna AND Course.Cno = Score.Cno SELECT * FROM dbo.findSnoGrade('计算机基础');
4、 创建一个自定义函数返回毕业班中目前无法毕业的学生信息,假设毕业班的学生学号以“14”开头,毕业条件为已修总学分10以上。 CREATE FUNCTION credictIsOK(@Sno AS char(10)) RETURNS real BEGIN DECLARE @sumCredict int SELECT @sumCredict = (SELECT SUM(Ccredit) FROM Score,Course WHERE Course.Cno = Score.Cno AND Score.Sno = @Sno AND Cscore IS NOT NULL) RETURN @sumCredict END CREATE FUNCTION findCannotGradate() RETURNS TABLE AS RETURN SELECT Sno FROM Student WHERE Sno LIKE '14%' AND (dbo.credictIsOK(Sno)<=10 OR dbo.credictIsOK(Sno) IS NULL); SELECT * FROM dbo.findCannotGradate();
C++ and OO Num. Comp. Sci. Eng.
C++ and OO Num. Comp. Sci. Eng.
C++ and OO Num. Comp. Sci. Eng.
C++ and OO Num. Comp. Sci. Eng.
C++ and OO Num. Comp. Sci. Eng.
WPF 应用程序使用程序的模型视图 ViewModel 设计模式 WVVM
穿透Session 0 隔离(二)(How to use Windows service run a GUI application.)
穿透Session 0 隔离(一)(how to use Windows service run a GUI application.)
.Net 远程路径权限访问。
- 最新文章
-
Unity C# 调用SaveFileDialog保存Excel文件
Unity C# 一些关于Camera的心得!
Unity C# Sting.Format的学习
Unity C# 脚本的单例
Unity3D C# 学习List数据类型的使用
Unity 相机的聚焦功能
【转】DoTween(HOTween V2) 教程
【unity教程】unity3D学习网
Kinect for Windows SDK v2.0 开发笔记 博客学习网址,Mark!!!
【体感游戏网 网址】
- 热门文章
-
【转】Unity3D研究院之使用Android的硬件缩放技术优化执行效率
【转】【shader面板】Shader Compilation in Unity 4.5
【转】Unity3d与iOS交互开发—接入平台SDK必备技能
【转】闲来无事总结的各种[XXX]的用法……高手勿入……内部低能……
【转】Unity上同时兼容Android和IOS的JSON库
【转】两步实现超实用的XML存档 易使用,跨平台,防作弊(内容加密 + 防拷贝)
FESTUNG模型介绍—1.对流方程求解
Matlab 调用 Python 脚本
Environment Modules 简明教程
Glib 对 C 函数进行单元测试