zoukankan      html  css  js  c++  java
  • sql动态行转列

    第一种方法:

    select *from ( select Url,case  when  Month=01 then  '1月' when  Month=02 then '2月' when  Month=03 then  '3月' when  Month=04 then '4月' when  Month=05 then  '5月' when  Month=06 then '6月' when  Month=07 then  '7月' when  Month=08 then '8月' when  Month=09 then  '9月' when  Month=10 then ' 10月' when  Month=11 then  '11月' when  Month=12 then ' 12月'
    
     end  month,Quality from  (
    
    select Url,DATENAME(M,AuditingTime)Month,SUM(Quality) Quality from  tb_order as a left join  tb_WebSiteInfo as b on a.WebSiteInfoID=b.ID left join  tb_OrderList as c on c.OrderID=a.ID where AuditingTime>'2013-01-01' and b.ID>0 and Auditing=2
    
    group by Url,DATENAME(M,AuditingTime) )as h ) as hh
    
     pivot ( sum(Quality) for month in([1月],[2月],[3月],[4月],[5月],[6月],[7月],[8月],[9月],[10月],[11月],[12月])) as a
    

      

    第二种方法:

    declare @sql varchar(8000)
    
    select @sql = isnull(@sql + ',' , '') + '['+CONVERT(varchar(7),AuditingTime,20)+']'
    
    from  tb_order as a left join  tb_WebSiteInfo as b on a.WebSiteInfoID=b.ID left join  tb_OrderList as c on c.OrderID=a.ID where AuditingTime>'2013-01-01' and b.ID>0 and Auditing=2
    
    group by CONVERT(varchar(7),AuditingTime,20) print @sql declare @sql2 varchar(8000)='' set @sql2=' select *from (
    
    select Url, CONVERT(varchar(7),AuditingTime,20) AuditingTime,SUM(Quality) Quality from  tb_order as a left join  tb_WebSiteInfo as b on a.WebSiteInfoID=b.ID left join  tb_OrderList as c on c.OrderID=a.ID where b.ID>0 and Auditing=2
    
    group by Url, CONVERT(varchar(7),AuditingTime,20)
    
    ) as hh pivot (sum(Quality) for AuditingTime in (' + @sql + ')) b'
    
    print @sql2
    
    exec(@sql2)
    

      

  • 相关阅读:
    《卓有成效的管理者》读后感
    小课堂week13 Clean Code Part2
    小课堂Week12 Clean Code Part1
    小课堂Week11 会说话的代码
    小课堂Week10 例外处理设计的逆袭Part3
    Spark菜鸟学习营Day6 分布式代码运行调试
    UML(一) 类图及类间关系
    分布式事务(一)两阶段提交及JTA
    Java线程间通信方式剖析——Java进阶(四)
    Java进阶(三)多线程开发关键技术
  • 原文地址:https://www.cnblogs.com/zhang9418hn/p/3021491.html
Copyright © 2011-2022 走看看