本文介紹了將列轉(zhuǎn)為行(oracle)的處理方法,對(duì)大家解決問題具有一定的參考價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧!
問題描述
限時(shí)送ChatGPT賬號(hào)..
很像這個(gè)原始的 SO 在 Oracle 中將行動(dòng)態(tài)轉(zhuǎn)為列
much like this original SO Pivoting rows into columns dynamically in Oracle
但我想做相反的事情
我怎樣才能得到
ID NAME AGE GENDER STATUS
---- ----- ----- ------ --------
1 Bob 30 male
2 Susan married
進(jìn)入這個(gè)
ID K V
---- ----- -----
1 name Bob
1 age 30
1 gender male
2 name Susan
2 status married
推薦答案
您正在尋找 unpivot
.
select * from t
unpivot (
v for k in ("NAME","AGE","GENDER","STATUS")
) u
如果年齡列是整數(shù),您可能會(huì)遇到類型不匹配的情況.在這種情況下,在取消旋轉(zhuǎn)之前將其轉(zhuǎn)換為字符.
You may have a type mismatch if the age column is an integer. In that case convert it to a character before unpivoting.
select *
from (select id,name,to_char(age) age,gender,status from t) t
unpivot (
v for k in ("NAME","AGE","GENDER","STATUS")
) u
這篇關(guān)于將列轉(zhuǎn)為行(oracle)的文章就介紹到這了,希望我們推薦的答案對(duì)大家有所幫助,也希望大家多多支持html5模板網(wǎng)!
【網(wǎng)站聲明】本站部分內(nèi)容來源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問題,如果有圖片或者內(nèi)容侵犯了您的權(quán)益,請(qǐng)聯(lián)系我們刪除處理,感謝您的支持!