Oracle 11g提供了新的行列轉換操作:PIVOT(行轉列)和UNPIVOT列轉行。本文對UNPIVOT的功能進行展示。
現有表src_table如下:
product_Id(產品ID) product_color(顏色) porduct_type(型號) is_intelligent(是否智能)
1111 red t1 是
1112 blue t2 否
1113 green t3 是
目標表dest_table如下:
product_Id param_name(參數名稱) param_value(參數值)
1111 product_color red
1112 product_color blue
1113 product_color green
1111 product_type t1
1112 product_type t2
1113 product_type t3
1111 is_intelligent 是
1112 is_intelligent 否
1113 is_intelligent 是
通過UNPIVOT實現如下:
SELECT *
FROM src_table
UNPIVOT (param_value FOR param_name IN (product_color AS 'product_color', product_type AS 'product_type', is_intelligent AS 'is_intelligent');
本文出自:億恩科技【www.vbseamall.com】
服務器租用/服務器托管中國五強!虛擬主機域名注冊頂級提供商!15年品質保障!--億恩科技[ENKJ.COM]
|