--1.创建一个合并的函数
create function fmerg(@id varchar(10))
returns varchar(8000)
as
begin
declare @str varchar(8000)
set @str=''
select @str=@str+','+Fitemname2 from 表A where Fitemname1=@id
set @str=right(@str,len(@str)-1)
return(@str)
End
go--调用自定义函数得到结果
select distinct Fitemname1,dbo.fmerg(id) as Fitemname2 from 表A

解决方案 »

  1.   

    先建立函数
    CREATE   FUNCTION GETSTR(@Fitemname NVARCHAR(20))
    RETURNS NVARCHAR(200)
    AS
    BEGIN
      DECLARE @str NVARCHAR(200)
      
      SET @str=''  SELECT @str = @str+Fitemname2+',' 
      FROM 你的表 WHERE Fitemname1=@Fitemname  SET @str = LEFT(@str,LEN(@str)-1)
      RETURN @str
    END然后用下面语句就可以了
      select Fitemname1,dbo.getstr(Fitemname1) from 你的表group by Fitemname1
      

  2.   

    真是天天有这个的问题,我回答起码快十次了
    先建立函数
    CREATE   FUNCTION GETSTR(@Fitemname NVARCHAR(20))
    RETURNS NVARCHAR(200)
    AS
    BEGIN
      DECLARE @str NVARCHAR(200)
      
      SET @str=''  SELECT @str = @str+Fitemname2+',' 
      FROM 你的表 WHERE Fitemname1=@Fitemname  SET @str = LEFT(@str,LEN(@str)-1)
      RETURN @str
    END然后用下面语句就可以了
      select Fitemname1,dbo.getstr(Fitemname1) from 你的表 group by Fitemname1