SQL Server's table-valued function returns a table type that is equivalent to a virtual table stored in memory.
Implementing a table-valued function is simple:
The following is a table-valued function with no input parameters
Create function tvpoints () returns Table as return (Select* from tb_users);
The number of table-valued functions queries data for all user tables
For multi-statement table-valued functions, at BEGIN ... The body of the function defined in the END statement block contains a series of Transact-SQL statements that generate rows and insert them into the table that will be returned.
The following example creates a table-valued function.
Create functiontvpoints ()returns @points Table(xfloatYfloat) as beginInsert @points Values(1,2);Insert @points Values(3,4);return;End
Querying table-valued functions is the same as querying a normal table
Select * from Tvpoints ()
The return is a table
Table-valued functions with input parameters
Create functionTvpoints2 (@x as int,@y as int)returns @points Table(xfloatYfloat) as beginInsert @points Values(@x,@y);return;End
Table-Valued functions