- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第8章 用户自定义函数
第8章 用户自定义函数 基础知识: 系统函数概述 创建用户自定义函数 标量值函数 表值函数 —— 用户自定义函数的使用学习目标 认知目标: 了解函数的概念、用法 掌握用户自定义函数的创建 能力目标: 掌握三种用户自定义函数的创建(重点、难点) 掌握用户自定义函数管理的方法(重点) 课堂练习 创建一个用户自定义函数,利用该函数计算任意一个整数的阶乘。 create function f_n(@n int) returns bigint begin declare @i int,@k bigint select @i=1,@k=1 while @i=@n begin select @k=@k*@i select @i=@i+1 end return @k end go select dbo.f_n(20) * * SQL Server 2000 函数:是T-SQL提供的用以完成某种特定功能的程序。 为了使用户对数据库进行查询和修改时更加方便,SQL server在T-SQL语言中提供了许多内部函数以供调用。用户也可以根据自己的需要创建函数。系统提供的函数称为内置函数;用户创建的函数称为用户自定义函数 。 系统函数为三类:标量函数、聚合函数和行集函数。 标量函数:对单一值操作,返回单一值。 聚合函数:对一组值进行计算后,向调用者返回单一的值。 行集函数:返回对象,该对象可在 SQL 语句中用作表引用。 对于每一个系统函数需要掌握两点: 函数功能 调用形式参数个数及其作用 系统函数 1、聚合函数 COUNT ,SUM ,AVG,MAX,MIN 例:查询出平均分最高的课程号 USE student2 GO SELECT cno FROM sc GROUP BY cno having avg(degree)=all(select avg(degree) from sc group by cno ) 不能用MAX()替换 2、日期时间函数 表5.1 日期元素、缩写及含义 使用日期函数时,应注意系统的当前日期格式。 日期元素 缩写 含义 日期元素 缩写 含义 year yy,yyyy 年 hour hh 时 month mm 月 minute mi 分 day dd 日 quarter qq 刻 dayofyear dy 年的天数 second ss 秒 week wk 星期数 millisecond ms 毫秒 weekday dw 星期几 2、日期时间函数 5.3 set language us_english --设置当前语言为美国英语 DATEADD():返回加上一个时间的新时间 DECLARE @OLDTime datetime SET @OLDTime=24 March 2006 3:00 PM‘ SELECT DATEADD(hh,4,@OldTime) DATEDIFF():两时间之差 DECLARE @FirstTime datetime, @SecondTime datetime SET @FirstTime=24 March 2006 3:00 PM SET @SecondTime=24 March 2006 3:33 PM SELECT DATEDIFF(ms,@FirstTime,@SecondTime) 2、日期时间函数 DATENAME()返回年月日星期等字符串。 DECLARE @StatementDate datetime SET @StatementDate=24 March 2006 3:00 PM SELECT DATENAME(dw,@StatementDate) DATEPART()返回部分日期 set dateformat ymd DECLARE @WhatsTheDay datetime SET @WhatsTheDay=23 March 2007 3:00 PM SELECT CAST(DATEPART(yyyy,@WhatsTheDay) AS char(4))+年+ CAST(DATEPART(mm,@WhatsTheDay) AS char(2))+月+ CAST(DATEPART(dd,@WhatsTheDay) AS varchar(2))+日 2、日期时间函数 实例5:显示系统当前的日期。 Select getdate() Print getdate() 实例6:将系统当前的日期显示为“现在的时间是:XX” Print ‘现在的时间是:‘+convert(varchar(30),getdate()) Prin
您可能关注的文档
最近下载
- 数码摄像机-松下-AJ-D965MC说明书.pdf VIP
- 2024年巡察整改专题民主生活会个人“聚焦四个方面”对照检查材料范文2篇.docx VIP
- 人工智能对文化产业的推动.pptx VIP
- 人教版(2024)七年级上册英语教学计划(含教学进度表).docx
- 软件的项目可行性的研究的报告编写.ppt VIP
- 一种用于处理高硫高砷金矿的提金剂及其制备方法.pdf VIP
- 中国甲状腺疾病诊治指南ppt.pptx VIP
- 《中国抗癌协会甲状腺癌整合诊治指南(2022精简版)》解读PPT课件.pptx VIP
- 一种澳洲坚果种质热敏感等级的精准诊断及其缓解新梢叶片热伤害的方法.pdf VIP
- 全球常见传染病防控概述.pptx VIP
文档评论(0)