码迷,mamicode.com
首页 > 其他好文 > 详细

行转列,列转行,图一转图二或图二转图一

时间:2018-11-14 11:00:25      阅读:140      评论:0      收藏:0      [点我收藏+]

标签:行转列   esc   mat   union   des   table   nbsp   color   col   

图一:

Nam Course Score
zhangsan Chinese 85
zhangsan Maths 76
zhangsan English 80
lisi Chinese 82
lisi Maths 90
lisi English 55

图二:

Nam Chinese Maths English
zhangsan 85 76 80
lisi 82 90 55

图一转图二:

SELECT
    Nam,
    SUM(
        IF (Course = Chinese, Score, 0)
    ) Chinese,
    SUM(IF(Course = Maths, Score, 0)) Maths,
    SUM(
        IF (Course = English, Score, 0)
    ) english
FROM
    t
GROUP BY Nam

图二转图一:

(SELECT Nam, ChineseCourse, Chinese Score FROM t2)
UNION
(SELECT Nam, Maths Course , Maths Score FROM t2)
UNION
(SELECT Nam, English Course , English Score FROM t2)
ORDER BY Nam DESC

 

行转列,列转行,图一转图二或图二转图一

标签:行转列   esc   mat   union   des   table   nbsp   color   col   

原文地址:https://www.cnblogs.com/suheng01/p/9956633.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!