zoukankan      html  css  js  c++  java
  • SQLServer中如何将一个字段的多个记录值合在一行显示

     有下表:   

          单位名称                 收费类别  
                  1                       a  
                  1                       b  
                  1                       d  
                  2                       a        
                  3                       b  
                  3                         c   
    要求查询结果显示如下   

          单位名称 收费类别  
                1                       a,b,d  
                2                           a  
                3                         b,c  

    函数实现
    create   function   getstr(@单位名称   int)  
      returns   varchar(2000)  
      as    
      begin  
      declare   @str   varchar(2000)  
      set   @str=''  
      select   @str=@str+','+rtrim(收费类别)   from   表   where   单位名称=@单位名称  
      select   @str=right(@str,len(@str)-1)   where   @str<>''  
      return   @str  
      end  
      go  
       
      --调用:  
      select   单位名称,dbo.getstr(单位名称)   收费类别     from   表   group   by   单位名称
  • 相关阅读:
    【题解】[USACO08DEC-Gold] Trick or Treat on the Farm
    【题解】[NOIP2015-TG] 信息传递
    【题解】[JLOI2011] 飞行路线
    平衡树
    斜率优化 dp 总结
    题解【P1833 樱花】
    题解【CodeForces 910A The Way to Home】
    三角恒等变换公式
    题解【洛谷 P1246 编码】
    生成函数(母函数)详解
  • 原文地址:https://www.cnblogs.com/SoulStore/p/691281.html
Copyright © 2011-2022 走看看