^_^自己搞定了  --自定义函数(要注意的是不可能实现像sum那样的通用聚合函数)
alter function f_str(@typeid varchar(30)) returns varchar(8000)
as
begin 
declare @ varchar(8000)
set @=''
select @=@+' '+ a.comment from a   where comment is not null
and typeid=@typeidreturn(stuff(@,1,1,'')) 
end
go

解决方案 »

  1.   

    字符串如何sum?字能连接啊。select field1+' '+field2 from tabel
    如果是一个字段的值连接,先看连接条件,你列数据出来,让大家看清楚点。
      

  2.   

    不能用sum()對字符串求和,要自己寫個函數--示例--建表
    create table tb (A varchar(10),B varchar(1000))
    Insert into tb 
    select '111','AA0000,AA0001,AA0002,'
    union all select '111','BB0000,BB0001,BB0002,'
    union all select '222','AA0120,AA0102,AA1453,'
    union all select '222','BB1212,BB3423,BB2123,'select * from tb--函數
    create function dbo.fn_b(@a varchar(10))
    returns varchar(1000)
    as 
    begin
    declare @s varchar(1000)
    set @s=''
    select @s=@s+[B] from tb where A=@a
    return (@s)
    end--刪除
    drop table tb
    drop function dbo.fn_b--結果
    select A,B=dbo.fn_b(A) from tb group by A
    A             B
    -------------------------------------------
    111    AA0000,AA0001,AA0002,BB0000,BB0001,BB0002,
    222 AA0120,AA0102,AA1453,BB1212,BB3423,BB2123,