alter function [dbo].[Select_Data]
(
)returns nvarchar(500) as
begin
--最小值
declare @bamin_amt decimal(18,2)
--需要数量
declare @mtr_amt decimal(18,4)
--要返回的字段
declare @returns as nvarchar(100)
--订单单号
declare @mtr_no as nvarchar(20)
--规格
declare @mtr_dim as nvarchar(20)
set @returns=''
set @bamin_amt=0
set @mtr_amt=0
set @mtr_dim=''
set @mtr_no=''
--新建指针
declare sor_1 cursor local
for
--将要获取的字段放入指针
select barmin_amt,mtr_amt,mtr_dim,mtr_no
from barcode_baramt_p
where ISNULL(barmin_amt,0)>=ISNULL(mtr_amt,0)
--打开指针
open sor_1
--将指针的字段放入临时变量
fetch sor_1 into @bamin_amt,@mtr_amt,@mtr_dim,@mtr_no
--循环指针
while @@Fetch_Status = 0
begin
--要操作的内容
begin
set @returns=ISNULL(@returns,'')+'订单单号:'+@mtr_no
+' 规格'+@mtr_dim
+' 安全数量:'+ cast(@bamin_amt as nvarchar(20))
+' 数量:'+ cast(@mtr_amt as nvarchar(20))
end
--将指针移动至下一个字段
fetch next from sor_1 into @bamin_amt,@mtr_amt,@mtr_dim,@mtr_no
end
--关闭指针
close sor_1
--清除指针缓存
deallocate sor_1
--去除最后一个逗号
--select @return = left(@return , len(@return) - 1)
--返回
return isnull(@returns,'')
end
--执行函数
select [dbo].[Select_Data]()