SQL数据库教程C7_2_2014.ppt
文本预览下载声明
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
显示全部