简述表值函数

来源:互联网 发布:2016最新网络红歌神曲 编辑:程序博客网 时间:2024/06/05 21:25

--表值函数
--创建示例表
CREATE TABLE T
(
NAME VARCHAR(20)
)
GO

INSERT INTO T
SELECT 'A'
UNION
SELECT 'B'
GO

--内嵌表值函数
--语法:
--CREATE FUNCTION 函数名(参数列表)
--RETURNS TABLE
--AS
--RETURN(T-SQL)
--GO
CREATE FUNCTION C()
RETURNS TABLE
AS
RETURN(SELECT * FROM T)
GO

--多语句表值函数
--语法:
--CREATE FUNCTION 函数名(参数列表)
--RETURNS 参数表名 TABLE(参数表 字段列表)
--AS
--T-SQL
--T-SQL
--RETURN
--GO
CREATE FUNCTION CT()
RETURNS @T TABLE (A DATETIME,NAME VARCHAR(20))
AS
BEGIN
DECLARE @I DATETIME
SET @I=GETDATE()
INSERT INTO @T
SELECT @I,NAME FROM T
RETURN
END
GO

SELECT * FROM dbo.C()
GO
SELECT * FROM dbo.CT()
GO

--注:1.创建表值函数时,如果函数体只有单条T-SQL语句,就采用内嵌表值函数;如果函数体有多条T-SQL语句,就采用多语句表值函数
--2.调用表值函数时,必须添加用户名前缀,例如dbo.CT()。

原创粉丝点击