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

溫馨提示×

溫馨提示×

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

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

pivot和unpivot函數

發布時間:2020-07-12 06:59:38 來源:網絡 閱讀:1365 作者:小陳子057 欄目:關系型數據庫

今天小編整理的都是固定行轉列(列轉行)的例子!

一:unpivot列轉行函數
舉例演示:
創建一張表tmp_test,數據如圖所示
pivot和unpivot函數
代碼展示:
select code,name,cource,grade from tmp_test
unpivot(
grade for source in (chinese,math,english)
);
數據結果展示:
pivot和unpivot函數

二:pivot行轉列函數
舉例演示:
創建一張表tmp_test2,數據如圖所示
pivot和unpivot函數
代碼展示:
select *
from (select username,subject,source from tmp_test2)
pivot (sum(source)
for subject in ('語文' 語文,'數學' 數學,'英語' 英語));
數據結果展示:
pivot和unpivot函數
其實該sql也可以用decode函數實現:
select username,
sum(decode(subject,'語文',source,0)) 語文,
sum(decode(subject,'數學',source,0)) 數學,
sum(decode(subject,'英語',source,0)) 英語,
from tmp_test2
group by username;

總結:
pivot函數:行轉列函數:
  語法:pivot(任一聚合函數 for 需專列的值所在列名 in (需轉為列名的值));
unpivot函數:列轉行函數:
  語法:unpivot(新增值所在列的列名 for 新增列轉為行后所在列的列名 in (需轉為行的列名));
執行原理:將pivot函數或unpivot函數接在查詢結果集的后面。相當于對結果集進行處理。
注:另外有的人說in后面可以跟子查詢語句,這個我也不能肯定,但是我在這次例子中自己去嘗試了,是不可以的。ORA-00936:缺失表達式
pivot和unpivot函數
關于這一點,有興趣的小伙伴可以自己私下再去嘗試一下!

今天就先到這里吧,至于動態的行轉列我們下次在討論!

向AI問一下細節

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

AI

张家川| 信丰县| 樟树市| 大同市| 孝昌县| 榆树市| 潞城市| 封丘县| 富宁县| 陵川县| 锦州市| 张家界市| 烟台市| 苗栗县| 图们市| 白银市| 德州市| 上栗县| 望城县| 永丰县| 肇源县| 大宁县| 陵川县| 冀州市| 临泽县| 凌云县| 海伦市| 麟游县| 即墨市| 板桥市| 汤阴县| 新闻| 龙口市| 绥德县| 南昌市| 麻栗坡县| 南澳县| 怀宁县| 麻阳| 铜陵市| 黔江区|