文档详情

SQL数据库教程C7_2_2014.ppt

发布:2017-05-04约2.28千字共32页下载文档
文本预览下载声明
7.3 函数;SQL Server中常用的几种系统函数: 字符串函数 日期和时间函数 数学函数 转换函数 系统信息函数 聚合函数 其它函数 各类别包括的函数(包括参数表及功能)请见讲义p290-294附录A的几个表。;7.4 系统函数;7.5 系统函数;7.3 系统函数;7.4 用户自定义函数;7.4 用户自定义函数 用T-SQL创建自定义函数;例:在数据库diannaoxs中创建一个名为“工龄”的用户自定义函数,根据员工的“工作时间”计算员工到指定年份时的工龄。 USE diannaoxs GO CREATE FUNCTION 工龄(@工作时间 Datetime,@defyear int) RETURNS int AS BEGIN RETURN @defyear-year(@工作时间) END GO;例:自定义函数“均价”,求存货与新进货的总加权均价(原均价按库存加权,新均价按新进数量加权)。 USE diannaoxs CREATE FUNCTION 均价( @原平均进价 Smallmoney, @库存 BigInt, @进价 Smallmoney, @数量 Int ) RETURNS Smallmoney BEGIN RETURN(@原平均进价*@库存+@进价*@数量)/(@库存+@数量) END;例:自定义函数“均价”,求存货与新进货的总加权均价(原均价按库存加权,新均价按新进数量加权)。 USE diannaoxs CREATE FUNCTION 均价( @原平均进价 Smallmoney, @库存 BigInt, @进价 Smallmoney, @数量 Int ) RETURNS Smallmoney BEGIN RETURN(@原平均进价*@库存+@进价*@数量)/(@库存+@数量) END;例:自定义函数“均价”,求存货与新进货的总加权均价(原均价按库存加权,新均价按新进数量加权)。 USE diannaoxs CREATE FUNCTION 均价( @原平均进价 Smallmoney, @库存 BigInt, @进价 Smallmoney, @数量 Int ) RETURNS Smallmoney BEGIN RETURN(@原平均进价*@库存+@进价*@数量)/(@库存+@数量) END;7.4 用户自定义函数 用SQL语句修改、删除自定义函数 ;7.4 用户自定义函数 用SQL语句修改、删除自定义函数 ;7.4 用户自定义函数 用企业管理器创建编辑自定义函数 ;7.4 用户自定义函数 用企业管理器创建编辑自定义函数 ;7.4 用户自定义函数 用企业管理器创建编辑自定义函数 ;7.4 用户自定义函数 用企业管理器创建编辑自定义函数 ;7.5 游标 游标的概念;7.5 游标 游标的概念;7.5 游标 用DECLARE语句定义游标 ;(2)SQL Server 2000 T-SQL中的扩展DECLARE语句 DECLARE 游标名 CURSOR [ FORWARD_ONLY|SCROLL] [ STATIC|KEYSET|DYNAMIC|FAST_FORWARD ] [ READ_ONLY|OPTIMISTIC ] [ TYPE_WARNING ] FOR SELECT语句 [ FOR UPDATE [ OF 字段名 [ , … n ] ] ] 说明: FORWARD_ONLY指定该游标为顺序结果集,只能用NEXT向后方式顺序提取记录。 SCROLL指定该游标为滚动结果集,可以使用向前、向后、定位方式提取记录。;(2)SQL Server 2000 T-SQL中的扩展DECLARE语句 DECLARE 游标名 CURSOR [ FORWARD_ONLY|SCROLL] [ STATIC|KEYSET|DYNAMIC|FAST_FORWARD ] [ READ_ONLY|OPTIMISTIC ] [ TYPE_WARNING ] FOR SELECT语句 [ FOR UPDATE [ OF 字段名 [ , … n ] ] ] 说明: DYNAMIC 指定游标中的数据将随基本表而变化,此时需要大量的游标资源。 FAST_FORWARD指定FORWARD_ONLY并READ_ONLY类型游标。使用FAST_FORWARD参数时不能同时使用FORWARD_ONLY、SCROLL、OPTIMISTIC或FOR UPDATE参数。 ;注意: ?不能将S
显示全部
相似文档