zoukankan      html  css  js  c++  java
  • ms sql 行列转化

    --建立测试环境   
      Create   Table   表(year   varchar(
    10),name   varchar(10),value   varchar(10))   
      
    --插入数据   
      insert   into   表   
      select   
    '2002','a','1'   union   
      select   
    '2002','b','4'   union   
      select   
    '2002','c','5'   union   
      select   
    '2003','a','7'   union   
      select   
    '2003','b','5'   union   
      select   
    '2003','c','4'   union   
      select   
    '2004','a','4'   
      select   
    *   from   表   
      
    --测试语句   
              DECLARE   @SQL   VARCHAR(
    8000)   
      SET   @SQL
    ='SELECT   name'   
      SELECT   @SQL
    =   @SQL+     
      
    ',sum(CASE   WHEN   year   =   '''   +   year   +   '''   THEN   value   else   0     END)   ['   +   year   +   ']'   
      FROM   (SELECT   DISTINCT   year   FROM   表)   A   
      SET   @SQL
    =@SQL+'   FROM   表   GROUP   BY   name'   
      exec   (@SQL)   
          
          
      
    --删除测试环境   
      Drop   Table   表   
      
    /*   
      name       2002         2003         2004   
      a 1 7 4   
      b 4 5 0   
      c 5 4 0   
        
      
    */
  • 相关阅读:
    架构设计:系统存储(1)——块存储方案(1)
    《Linux设备节点创建》用户空间ueventd创建设备节点规则
    架构设计:系统间通信(45)——阶段性问题记录
    队列
    链栈
    顺序栈
    入栈问题
    队列
    数学表达式配对栈
    链表设置
  • 原文地址:https://www.cnblogs.com/shengel/p/765453.html
Copyright © 2011-2022 走看看