SQL SERVER 表值函数
1.不带输入参数
CREATE FUNCTION myfunction() RETURNS TABLE AS RETURN ( SELECT * FROM TableName )
select * from MyFunction()
2.多语句表值函数
CREATE function MyFunction() RETURNS @MyReturnTable TABLE (a int,b int) AS BEGIN INSERT @MyReturnTable VALUES(1,2); INSERT @MyReturnTable VALUES(3,4); RETURN; END
select * from MyFunction()
3.带返回值表值函数
CREATE function MyFunction(@A AS int,@B AS int) returns @MyReturnTable table (a int, b int) AS BEGIN insert @MyReturnTable values(@A,@B); RETURN; END
select * from MyFunction(5,6)
4.可以使用CROSS APPLY 将表和表值函数进行联接,如下:
SELECT <col1>,<col2> FROM <table1> CROSS APPLY <udf name>(<table1>.<col3>)
 
                    
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号