91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

oracle多行轉列怎么實現

小億
83
2024-09-13 13:38:24
欄目: 云計算

在Oracle中,可以使用PIVOT操作將多行數據轉換為單列的多個值

假設有一個名為sales_data的表,其結構如下:

CREATE TABLE sales_data (
  product_id NUMBER,
  month VARCHAR2(10),
  sales_amount NUMBER
);

插入一些示例數據:

INSERT INTO sales_data VALUES (1, 'January', 100);
INSERT INTO sales_data VALUES (1, 'February', 200);
INSERT INTO sales_data VALUES (2, 'January', 150);
INSERT INTO sales_data VALUES (2, 'February', 250);

要將這些數據轉換為每個產品ID對應一行,每個月對應一列的格式,可以使用以下查詢:

SELECT * FROM (
  SELECT product_id, month, sales_amount
  FROM sales_data
)
PIVOT (
  SUM(sales_amount)
  FOR month IN ('January' AS january, 'February' AS february)
);

查詢結果如下:

PRODUCT_ID JANUARY FEBRUARY
---------- -------- --------
         1       100      200
         2       150      250

在這個例子中,我們首先從sales_data表中選擇product_idmonthsales_amount列。然后,我們使用PIVOT操作將month列的值轉換為列名,并對sales_amount列求和。最后,我們使用FOR子句指定要轉換的月份。

0
哈尔滨市| 新津县| 清徐县| 安阳市| 广平县| 和平县| 双柏县| 同心县| 尉犁县| 新邵县| 徐汇区| 叙永县| 南汇区| 广元市| 寻乌县| 乾安县| 惠东县| 苗栗市| 翼城县| 团风县| 嵩明县| 民和| 贵南县| 海门市| 浦城县| 贵定县| 宕昌县| 平泉县| 尚志市| 宜兴市| 邢台市| 喀什市| 海丰县| 姜堰市| 尉犁县| 洪江市| 仙游县| 台中县| 揭东县| 资讯| 岑巩县|