日期:2014-05-18  浏览次数:20499 次

Procedure 存储过程
创建存储过程:
create proc ProductList
go
as 
begin
  select p.productID,p.Name from Product as p
end

想进行修改,输出类型为nvarchar(max)的数据;nvarchar是productID拼接而成的
declare @provarchar nvarchar(max)

set @provarchar=productID1+","+productID2+","+productID3+","+…+productIDn

------解决方案--------------------
SQL code


create table Product 
(
   productID varchar(10),
   name varchar(100)
)

--测试数据
insert into Product 
select 'product1','aaa' union all
select 'product2','bbb' union all
select 'product3','ccc' union all
select 'product4','ddd'



CREATE PROC ProductList
@provarchar nvarchar(max) OUTPUT   -- 要输出的参数
AS
BEGIN
    
select @provarchar=isnull(@provarchar+',' , '')+ productID  from Product

END


DECLARE @ProductList nvarchar(max)
EXEC ProductList @ProductList OUTPUT
select @ProductList

--结果
--product1,product2,product3,product4