日韩小视频-日韩久久一区二区三区-日韩久久一级毛片-日韩久久久精品中文字幕-国产精品亚洲精品影院-国产精品亚洲欧美云霸高清

下載吧 - 綠色安全的游戲和軟件下載中心

軟件下載吧

當(dāng)前位置:軟件下載吧 > 技術(shù)開發(fā) > 數(shù)據(jù)庫 > PostgreSQL 實(shí)現(xiàn)將多行合并轉(zhuǎn)為列

PostgreSQL 實(shí)現(xiàn)將多行合并轉(zhuǎn)為列

時間:2024-02-21 13:55作者:下載吧人氣:32

需求將下列表格相同id的name拼接起來輸出成一列

id Name
1 peter
1 lily
2 john

轉(zhuǎn)化后效果:

id Name
1 peter;lily
2 john;

實(shí)現(xiàn)方式使用 array_to_string 和 array_agg 函數(shù),具體語句如下:

string_agg(expression, delimiter) 把表達(dá)式變成一個數(shù)組

string_agg(expression, delimiter) 直接把一個表達(dá)式變成字符串

select id, array_to_string( array_agg(Name), ‘;’ ) from table group by id

補(bǔ)充:Postgresql實(shí)現(xiàn)動態(tài)的行轉(zhuǎn)列

問題

在數(shù)據(jù)處理中,常遇到行轉(zhuǎn)列的問題,比如有如下的問題:

有這樣的一張表

“Student_score”表:

姓名 課程 分?jǐn)?shù)
張三 數(shù)學(xué) 83
張三 物理 93
張三 語文 80
李四 語文 74
李四 數(shù)學(xué) 84
李四 物理 94

我們想要得到像這樣的一張表:

姓名 數(shù)學(xué) 物理 語文
李四 84 94 74
張三 83 93 80

當(dāng)數(shù)據(jù)量比較少時,我們可以在Excel中使用數(shù)據(jù)透視表pivot table的功能實(shí)現(xiàn)這個需求,但當(dāng)數(shù)據(jù)量較大,或者我們還需要在數(shù)據(jù)庫中進(jìn)行后續(xù)的數(shù)據(jù)處理時,使用數(shù)據(jù)透視表就顯得不那么高效。

下面,介紹如何在Postgresql中實(shí)現(xiàn)數(shù)據(jù)的行轉(zhuǎn)列。

靜態(tài)寫法

當(dāng)我們要轉(zhuǎn)換的值字段是數(shù)值型時,我們可以用SUM()函數(shù):

CREATE TABLE Student_score(姓名 varchar, 課程 varchar, 分?jǐn)?shù) int);
INSERT INTO Student_score VALUES(‘張三’,’數(shù)學(xué)’,83);
INSERT INTO Student_score VALUES(‘張三’,’物理’,93);
INSERT INTO Student_score VALUES(‘張三’,’語文’,80);
INSERT INTO Student_score VALUES(‘李四’,’語文’,74);
INSERT INTO Student_score VALUES(‘李四’,’數(shù)學(xué)’,84);
INSERT INTO Student_score VALUES(‘李四’,’物理’,94);
select 姓名
,sum(case 課程 when ‘數(shù)學(xué)’ then 分?jǐn)?shù) end) as 數(shù)學(xué)
,sum(case 課程 when ‘物理’ then 分?jǐn)?shù) end) as 物理
,sum(case 課程 when ‘語文’ then 分?jǐn)?shù) end) as 語文
from Student_score
GROUP BY 1

標(biāo)簽[db:關(guān)鍵字]

相關(guān)下載

查看所有評論+

網(wǎng)友評論

網(wǎng)友
您的評論需要經(jīng)過審核才能顯示

熱門閱覽

最新排行

公眾號

主站蜘蛛池模板: 亚洲最新网站 | 成人国产三级在线播放 | 亚洲一级毛片免费观看 | 中文字幕在线欧美 | 美女张开双腿让男人桶视频免费 | a高清免费毛片久久 | 国产成人亚洲精品一区二区在线看 | 久久国产精品久久国产片 | 国产精在线 | 国内精品小视频在线 | 性欧美videofree另类17 | 91视频欧美| 美女视频一区二区三区 | 亚洲男人天堂 | 国产一区亚洲二区三区毛片 | 日本aaaaa毛片动漫 | 欧美精品久久久久久久影视 | 亚洲欧洲一区二区三区久久 | 欧美成人h精品网站 | 久久综合精品国产一区二区三区 | 亚洲精品在线免费看 | 日韩性视频网站 | 99久久免费看精品国产一区 | 日韩久草 | 成人精品一区二区不卡视频 | 波多野结衣在线播放视频 | 国产欧美一区二区精品久久久 | 国产一级毛片卡 | 久草久草视频 | 久久亚洲精品永久网站 | 99久久免费看精品国产一区 | 精品一久久香蕉国产线看播放 | 日本一级毛片中文字幕 | 女黄人东京手机福利视频 | 成年人视频免费网站 | 全国男人天堂网 | 中文字幕 亚洲精品 | 波多野结衣视频免费在线观看 | 久久综合中文字幕一区二区 | 在线精品视频免费观看 | 欧美操操操操 |