加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

SQLServer 函数简单介绍

发布时间:2020-12-12 14:55:12 所属栏目:MsSql教程 来源:网络整理
导读:如果 RETURNS 子句指定一种标量数据类型,则函数为标量值函数。可以使用多条 Transact-SQL 语句定义标量值函数。如果 RETURNS 子句指定 TABLE,则函数为表值函数。标量值函数:ALTER FUNCTION [dbo].[FnGetResult](@oldvalue int,--参数@step int)RETURNS in
如果 RETURNS 子句指定一种标量数据类型,则函数为标量值函数。可以使用多条 Transact-SQL 语句定义标量值函数。
如果 RETURNS 子句指定 TABLE,则函数为表值函数。
标量值函数:
ALTER FUNCTION [dbo].[FnGetResult]
(
	@oldvalue int,--参数
	@step int
)
RETURNS int
AS
BEGIN
	-- Declare the return variable here
	DECLARE @result int

	-- Add the T-SQL statements to compute the return value here
	SELECT @result=@oldvalue*@step --计算值

	-- Return the result of the function
	RETURN @result --返回值
END

内联表值函数:
ALTER FUNCTION [dbo].[GetRoleListByID]
(	
	@RoleID int
)
RETURNS TABLE 
AS
RETURN 
(
	-- Add the SELECT statement with parameter references here
	SELECT * FROM TRoleFunction WHERE RoleID=@RoleID
)

多语句表值函数:
CREATE FUNCTION dbo.GetNewUserList
(
	@ID int
)
RETURNS 
@tbNewUser TABLE 
(
	ID int,Name nvarchar(20)
 )

AS
BEGIN
	INSERT INTO @tbNewUser  VALUES(1,'Ben.Jiang')
	INSERT INTO @tbNewUser  VALUES(2,'Leo.Zheng'
	RETURN 
END
GO

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读