sql 表值函数

本文介绍了如何利用SQL Server的表值函数扩展SQL Server Reporting Services的数据访问能力。表值函数允许编程人员和报表设计者在数据未直接存储在数据库表中的情况下创建报表。文中通过实例展示了不带输入参数、带输入参数以及从Web服务中提取数据的表值函数用法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

     如何使用 SQL Server 中的表值函数来扩展 SQL Server Reporting Services 的数据访问功能。表值函数让编程人员和报表设计员有一定的灵活性,使他们能够实现数据不直接存储在数据库表中的报表制作场景。

 

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

下面是一个不带输入参数的表值函数

 

create function tvpoints()
returns table
as
return
(
select * from tb_users
);
这个表值函数数查询所有用户表的数据

 

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

 

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

 

create function tvpoints()
returns @points table (x float, y float)
as begin
insert @points values(1,2);
insert @points values(3,4);
return;
end

 

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

 

带输入参数的表值函数

 

create function tvpoints2(@x AS int,@y as int)
returns @points table (x float, y float)
as begin
insert @points values(@x,@y);
return;
end

表值函数的一个有趣功能是从 Web 服务中提取数据的能力。这可用于创建非常规的报表。我将说明如何在表值函数中使用 Microsoft MapPoint Web 服务,并将它与 AdventureWorks 中的数据联接,从而将空间数据显示在地图上和显示在报表中。

转载于:https://www.cnblogs.com/Eleanore/archive/2012/02/08/2342818.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值