select field1,field2,MySum(Field3) As MyField from table Group By Field1,Field2这里的MySum是自定义函数

解决方案 »

  1.   

    create function Your (@field1 varchar(100),@field2 varchar(100))
    returns varchar(8000)
    as 
    begin
      declare @str varchar(8000)
      set @str=''
      select @str=@str+','+rtrim(field3)
      from table
      where field1=@field1 and field2=@field2
      set @str=right(@str,len(@str)-1)
      return @str
    end 
    go
    你试试
      

  2.   

    create function getstr(@content varchar(100),@a varchar(100))
    returns varchar(2000)
    as 
    begin
    declare @str varchar(2000)
    set @str=''
    select @str=@str+','+cast(field3 as varchar(10)) from table1 where field1=@content and field2=@a
    set @str=right(@str,len(@str)-1)
    return @str
    end
    go--调用:
    select field1,field2,dbo.getstr(field1,c)  from table1 group by field1,field2
      

  3.   

    create function Your (@field1 varchar(100),@field2 varchar(100))
    returns varchar(8000)
    as 
    begin
      declare @str varchar(8000)
      set @str=''
      select @str=@str+','+rtrim(field3)
      from table
      where field1=@field1 and field2=@field2
      set @str=right(@str,len(@str)-1)
      return @str
    end 
    go
    select field1,field2 getstr(field1,field2) field3 from table group by field1,field2
    drop function Your
      

  4.   

    select field1,field2,f(field1)
    from table1
    group by field1,field2CREATE FUNCTION f(@v varchar(20))      
    RETURNS varchar(200)  AS  
    DECLARE  @str varchar(200)
    SELECT @str=@str+filed3 FROM  WHERE field1 = @v
    RETURN @str