SQL Function (SQL自定义函数)

创建的自定义函数可以在可编程性->函数->标量性函数中管理

--创建函数(返回varchar类型的值)
select dbo.test(2)--传递参数2
返回结果:错误
--调用函数
select * from dbo.GetTableDetails()--dbo.需要注意
返回sales表的所有记录。

create function test(@Num varchar(20))--@Num 参数
returns varchar(50) --返回值类型
as 
begin 
declare @MSG varchar(20)
if(@Num =1)
    select @MSG ='正确'
else
    select @MSG ='错误'
return @MSG 
end 


--调用函数

--创建返回Table类型的函数
USE pubs
create function GetTableDetails()
returns TABLE
as 
    return (select * from sales )

 

例:IP转Int函数

 

-- =======================================
-- Function Name	: IpToInt
-- Description	: 将IP转换成数值
-- Author		: newmin
-- Date		: 2010/10/15
-- =======================================
CREATE FUNCTION IpToInt(@ip nvarchar(15))
RETURNS bigint
AS
BEGIN
	DECLARE @re bigint
    SET @re=0
    SELECT @re=@re+LEFT(@ip,CHARINDEX('.',@ip+'.')-1)*ID
        ,@ip=STUFF(@ip,1,CHARINDEX('.',@ip+'.'),'')
    FROM(
        SELECT ID=CAST(16777216 as bigint)
        UNION ALL SELECT 65536
        UNION ALL SELECT 256
        UNION ALL SELECT 1)a
    RETURN(@re)
END

原文地址:https://www.cnblogs.com/newmin/p/1852416.html