zoukankan      html  css  js  c++  java
  • 行转列/列转行

    行转列:

    select t.*, t.rowid from TEST1 t
     
    ID  C1    C2   C3
    1  小红  数学  10  
    2  小红  语文  20  
    3  小栏  数学  15  
    4 小栏 语文 25
     
    --test1
    oracle :  SELECT C1,to_char(WM_CONCAT(C2)) c2 FROM TEST1 group by c1
    mysql:    SELECT C1,GROUP_CONCAT(C2) c2 FROM TEST1 group by c1
    --结果:
     C1      C2
    小红 数学,语文
    小栏 数学,语文
     
     
    --test2
    select c1, max(math) as math, max(yuwen) as yuwen
      from (SELECT c1,
                   case
                     when c2 = '数学' then
                      c3
                   end as math,
                   case
                     when c2 = '语文' then
                      c3
                   end as yuwen
              from test1)
     group by c1
    --结果: 
     C1  数学 语文
    小红 10 20
    小栏 15 25
     
    --test3
    select *
      from (select c2, c3 from test1) pivot(sum(c3) for c2 in('数学', '语文'))
    --结果:
    数学  语文
     25    45
     
    --test4
    select *
      from (select c1, c2,c3 from test1) pivot(max(c3) for c2 in('数学', '语文'))
    --结果:
     C1  数学 语文
    小红 10 20
    小栏 15 25
  • 相关阅读:
    上传图片到FTP的实例
    关于浏览器兼容问题:获取div的值
    多张表数据导入到execl中
    把泛型转换成dataTable
    关于游标
    Excel 公式 两个时间比大小
    SQL 执行顺序
    VBA实现随意输入组合码,查询唯一标识码
    IIS7 503错误 Service Unavailable
    汇总文件数据 VBA
  • 原文地址:https://www.cnblogs.com/BonnieWss/p/10784903.html
Copyright © 2011-2022 走看看