SQL中Table型数据(表变量)与用户自定义函数(downmoon)

本文介绍了SQL Server 2000中新增的Table型数据特性及其与用户自定义函数(UDF)的结合使用方法。通过示例详细展示了如何定义Table型变量并进行基本操作,以及如何创建返回Table型数据的用户自定义函数。

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

SQL中Table型数据与用户自定义函数(downmoon)
SQL Server 2000 新增了Table型数据:Table型数据不能用来定义列的类型,只能用作T-SQL变量或者作为自定义函数的返回值,下例是一个简单的table 型数据的例子:

Declare @TableVar Table
(Cola
int Primary Key ,Colb char ( 3 ))
Insert Into @TableVar Values ( 1 , ' abc ' )
Insert Into @TableVar Values ( 2 , ' def ' )
Select * From @TableVar



以上语句定义了一个名为TableVar,有两列的table 型变量像通常的表一样table 型数据也有insert select 等操作。在SQL Server 2000 中table 型数据与用户自定义函数是密不可分的,SQL Server 2000支持两种类型的函数:内置函数和用户定义函数。内置函数只允许T-SQL 语句调用而不能更改使用。用户定义函数可以根据需要定义自己所需的函数。用户定义函数可以带参数,也可以不带参数,但只能返回单值。正是由于这个原因SQL Server 2000 增加了table 型数据 ,其值可以是整型字符型或数值型。下例是一个简单的用户定义函数说明了用户定义函数的基本结构:

Create Function CubicVolume
(
@CubeLength decimal ( 4 , 1 ), @CubeWidth decimal ( 4 , 1 ), @CubeHeight decimal ( 4 , 1 ))
Returns decimal ( 12 , 3 )
As
Begin
Return ( @CubeLength * @CubeWidth * @CubeHeight )
End
-- SELECTAppDta.dbo.CubicVolume(10,8,6)


在上例中用CREATE FUNCTION 创建了一个函数CubicVolume 来计算立方体的体积,变量CubeLength CubeWidth CubeHeight 为输入参数,返回值为数值型。BEGIN 表明函数体的开始,END 表明函数体的结束。通过下例 我们就会清楚用户定义函数与table 型数据是如何有机结合的:

Use pubs

Create Function SalesByStore( @storeid varchar ( 30 ))
Returns Table
As
Return ( Select title,qty From saless,titlest
Where s.stor_id = @storeid and t.title_id = s.title_id)

-- select*fromsales
SELECT Pubs.dbo.SalesByStore( 7131 )

邀月注:本文版权由邀月 和优快云共同所有,转载请注明出处。
助人等于自助! 3w@live.cn



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值