在SSMS中会有两种函数:内置函数,用户自定义函数。
内置函数,如max(),min()
用户自定函数是自己编写的函数,分为标量函数,表函数
先介绍一下标量函数范例:
1.创建标量函数
create function Greatest(@v1 float,
@v2 float,
@v3 float)
RETURNS float
AS
BEGIN
declare @ret float;
set @ret=@v1;
if @ret<@v2
begin
set @ret=@v2
end
if @ret<@v3
begin
set @ret=@v3
end
return @ret
END
2.使用标量函数
使用标量函数的方式有两种:
1)select 语句调用
select dbo.Greatest(1.36,10.56,8.366)
或者
SELECT top 10 rank() over(order by dbo.Greatest(v1,v2,v3) desc) as id,idx,t,v1,v2,v3,v13 FROM [overload].[dbo].[data20191102]
2)exec 直接执行
exec dbo.Greatest1.36,10.56,8.366
表值函数示例可以参见
https://www.cnblogs.com/viusuangio/p/6212072.html