当前位置:Gxlcms > 数据库问题 > sql中的表值函数与标量值函数区别与用法

sql中的表值函数与标量值函数区别与用法

时间:2021-07-01 10:21:17 帮助过:3人阅读

function tvpoints() returns table as return ( select * from tb_users );

调用-这个结果返回的是一张表:

select * from tvpoints()

(2)下面是带参的内联表值函数

对于多语句表值函数,在 BEGIN...END 语句块中定义的函数体包含一系列 Transact-SQL 语句,这些语句可生成行并将其插入将返回的表中。
以下示例创建了一个表值函数.

create function tvpoints()
returns @points table (x float, y float)
as begin
insert @points values(1,2);
insert @points values(3,4);
return;
end

调用-查询到的是一张表

select * from tvpoints2(x,y)

(3)标量函数(返回一个具体类型的值而不是一张表了)

 

CREATE FUNCTION FUN_DataFormat (@strDate datetime)  
RETURNS varchar(20)  AS  
BEGIN 
    
    declare @date varchar(20)
      set @date = DATENAME(YY,@strDate)++Convert(VARCHAR,MONTH(@strDate))++Convert(VARCHAR,DAY(@strDate))+
    return @date
END

可以通过select dbo.FUN_DataFormat(getdate())来使用。(用的时候一定要在函数前面添加一个dbo或者的话数据库语句报错的会提示不认识的)

sql中的表值函数与标量值函数区别与用法

标签:sele   oat   添加   复杂   div   调用   creat   get   内联函数   

人气教程排行