Sqlserver表值函数


Sql server 的表值函数是返回一个Table类型,table类型相当与一张存储在内存中的一张虚拟表。

实现表值函数很简单:
下面是一个不带输入参数的表值函数

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

这个表值函数数查询所有用户表的数据

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

以下示例创建了一个表值函数.

?
create function tvpoints()
returns @pointstable (xfloat, y float)
as begin
insert @pointsvalues(1,2);
insert @pointsvalues(3,4);
return;
end

查询表值函数跟查询普通表一样
select * from tvpoints()
返回的是一张表

带输入参数的表值函数

?
create function tvpoints2(@xAS int,@yas int)
returns @pointstable (xfloat, y float)
as begin
insert @pointsvalues(@x,@y);
return;
end
posted @ 2013-08-24 23:29  王永华  阅读(677)  评论(0编辑  收藏  举报