zoukankan      html  css  js  c++  java
  • SQL竖表转换成横表统计

    #创建表user_score
    create table user_score
    (
        name varchar(20),
        subjects varchar(20),
        score int
    );
    insert into user_score(name,subjects,score) values('张三','语文',60);
    insert into user_score(name,subjects,score) values('张三','数学',70);
    insert into user_score(name,subjects,score) values('张三','英语',80);
    insert into user_score(name,subjects,score) values('李四','语文',90);
    insert into user_score(name,subjects,score) values('李四','数学',100);
    
    #创建表user_score2
    create table user_score2
    (
        name varchar(20),
        yuwen int,
        shuxue int,
        yingyu int
    );
    insert into user_score2(name,yuwen,shuxue,yingyu) values('张三',60,70,80);
    insert into user_score2(name,yuwen,shuxue,yingyu) values('李四',90,100,0);
    
    #纵表转横表
    select name,
    sum(case subjects when '语文' then score else 0 end) as '语文',
    sum(case subjects when '数学' then score else 0 end) as '数学', 
    sum(case subjects when '英语' then score else 0 end) as '英语'
    from user_score group by name;
    
    #纵表转横表
    SELECT name, 'yuwen' AS subjects, yuwen AS score FROM user_score2 UNION ALL   
    SELECT name, 'shuxue' AS subjects, shuxue AS score FROM user_score2 UNION ALL   
    SELECT name, 'yingyu' AS subjects, yingyu AS score FROM user_score2  
    ORDER BY name,subjects DESC; 
    
  • 相关阅读:
    2014/7/24
    POJ 3414 Pots BFS
    hdu5119 Happy Matt Friends(dp)
    hdu1285 拓扑排序+优先队列
    串口參数具体解释:波特率,数据位,停止位,奇偶校验位
    浅谈软件销售工作
    设计模式及其学习方法的个人理解
    Apache + Tomcat + JK 集群
    SpringMVC案例2----基于spring2.5的注解实现
    poj
  • 原文地址:https://www.cnblogs.com/apollo1616/p/10430087.html
Copyright © 2011-2022 走看看