亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

PostgreSQL行轉列的方法

發布時間:2020-07-17 10:35:43 來源:億速云 閱讀:958 作者:清晨 欄目:編程語言

這篇文章將為大家詳細講解有關PostgreSQL行轉列的方法,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

PostgreSQL如何行轉列

方法一:group by + sum + case when

select name,
sum(case when zbfm='年齡' then value else 0 end) as 年齡,
sum(case when zbfm='身高' then value else 0 end) as 身高,
sum(case when zbfm='體重' then value else 0 end) as 體重
from test group by name
having name like '%1' and length(name)=4 order by 年齡 desc

PostgreSQL行轉列的方法

PostgreSQL行轉列的方法

方法二:用postgresql的crosstab交叉函數

推薦:postgresql教程

crosstab(unknown, unknown) does not exist
select * from
crosstab(
'select name,zbfm,value from test where name like ''%1'' and length(name)=4',$$values('年齡'), ('身高'), ('體重')$$)
as score(name text, 年齡 int, 身高 int, 體重 int)
order by 年齡 desc

PostgreSQL行轉列的方法

PostgreSQL行轉列的方法

方法三:group by + string_agg + split_part(分組,行轉列,字符切割)

select name, 
split_part(split_part(temp,',',1),':',2) as 年齡,
split_part(split_part(temp,',',2),':',2) as 身高,
split_part(split_part(temp,',',3),':',2) as 體重
from(
select name, string_agg(zbfm||':'||value,',') as temp from test
group by name 
having name like '%1' and length(name)=4
) as t order by 年齡 desc

PostgreSQL行轉列的方法

PostgreSQL行轉列的方法

group by + string_agg

select name, string_agg(zbfm||':'||value,',') from test
group by name 
having name like '%1' and length(name)=4

PostgreSQL行轉列的方法

關于PostgreSQL行轉列的方法就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

桐梓县| 瑞金市| 阿拉善右旗| 遂宁市| 普安县| 柘荣县| 武功县| 翁牛特旗| 红河县| 科技| 丽水市| 稻城县| 裕民县| 太湖县| 濮阳市| 武冈市| 清水县| 临夏市| 林芝县| 定边县| 曲松县| 巫溪县| 新田县| 金寨县| 绍兴县| 青河县| 东乡族自治县| 光山县| 靖宇县| 阿拉善左旗| 成安县| 青川县| 锡林浩特市| 健康| 平阴县| 疏勒县| 永州市| 宜州市| 牙克石市| 鹿邑县| 勐海县|