SQLServer 表值函数与标量值函数 定义方式与调用区别

来源:互联网 发布:淘宝司法拍卖车辆 编辑:程序博客网 时间:2024/05/01 20:31
 

标量值函数创建:

Create Function [dbo].[GoosWidth](@GoodsCode varchar(20))
Returns float
Begin
       Declare @Value float
       Select @Value = GoodsWidth From Master_Goods Where GoodsCode = @GoodsCode
       Return(@Value)
End

 

表值函数创建:

Create Function [dbo].[GetAllGoods]()
Returns Table
As
 Return(Select * From [Master_Goods])

 

创建一个自定义样式的标量函数

Create Function [dbo].[GetMyStyleDate](@Date DateTime)
Returns nvarchar(20)
Begin
       Declare @ReturnValue nvarchar(20)
       Set @ReturnValue = '今天是' + convert(nvarchar(4),datepart(year,@Date)) + '年'
                                                 + convert(nvarchar(2),datepart(month,@Date)) + '月'
                                                 + convert(nvarchar(2),datepart(day,@Date)) + '日'
       return @ReturnValue
End

 

其中标量值函数调用的时候方式如下:Select dbo.GoosWidth('0003')    注意:函数前边一定要加上所有者:dbo

表值函数调用方法如下:Select * From GetAllGoods()       表值函数调用的时候不用加入。

原创粉丝点击