厦门网站建设推广,广州网站备案号,摄影网站设计代码,嘉定网站设计公司水善利万物而不争#xff0c;处众人之所恶#xff0c;故几于道#x1f4a6; 文章目录 MySQL1.行转列2.列转行 Hive1.行转列2.列转行(1)侧窗(2)union MySQL
1.行转列
把多行转成列。直接group#xff0c;sum(if())
2.列转行 Hive
1.行转列 select name,sum(if(kmshuxu… 水善利万物而不争处众人之所恶故几于道 文章目录 MySQL1.行转列2.列转行 Hive1.行转列2.列转行(1)侧窗(2)union MySQL
1.行转列
把多行转成列。直接groupsum(if())
2.列转行 Hive
1.行转列 select name,sum(if(kmshuxue,cj,0)) shuxue,sum(if(kmyuwen,cj,0)) yuwen,sum(if(kmhuaxue,cj,0)) huaxue
from hzl
group by name2.列转行
(1)侧窗
hive中除了可以用常规的union all 外还可以用侧窗
-- 侧窗写法
select name,km,cj
from lzh2 lateral view explode(map(yuwen,yuwen,shuxue,shuxue,huaxue,huaxue)) tmp as km,cj;(2)union
-- 常规写法
select name,shuxue km,shuxue cj from lzh2
union all
select name,yuwen,yuwen from lzh2
union all
select name,huaxue,huaxue from lzh2;