Rumah > pangkalan data > tutorial mysql > Bagaimanakah Saya Boleh Mengubah Data Bulanan Rata dalam Oracle SQL untuk Analisis Lebih Mudah?

Bagaimanakah Saya Boleh Mengubah Data Bulanan Rata dalam Oracle SQL untuk Analisis Lebih Mudah?

Mary-Kate Olsen
Lepaskan: 2025-01-23 07:37:10
asal
686 orang telah melayarinya

How Can I Pivot Flat Monthly Data in Oracle SQL for Easier Analysis?

Pembinaan semula data jadual pangsi Oracle SQL

Isu: Tukar data jadual rata untuk analisis pangsi

Andaikan anda mempunyai jadual yang mengandungi data berangka yang disusun mengikut bulan:

<code>MONTH | VALUE
-------|------
1      | 100
2      | 200
3      | 300
...</code>
Salin selepas log masuk

Matlamatnya adalah untuk menukar data ini kepada format pangsi untuk melihat nilai bulanan dengan lebih visual:

<code>MONTH_JAN | MONTH_FEB | MONTH_MAR | ...
---------|---------|---------|
100       | 200       | 300       | ...</code>
Salin selepas log masuk
Salin selepas log masuk

Oracle 11g dan ke atas: operator PIVOT

Oracle 11g dan kemudiannya memperkenalkan pengendali PIVOT, yang membolehkan data berputar dengan mudah. Sintaksnya adalah seperti berikut:

<code>SELECT *
FROM table_name
PIVOT (
  aggregate_function(column_name)
  FOR (pivot_column)
  IN (list_of_values)
);</code>
Salin selepas log masuk

Contoh menggunakan operator PIVOT

Pertimbangkan contoh data berikut:

<code>CREATE TABLE tq84_pivot (
  month NUMBER,
  value NUMBER
);

INSERT INTO tq84_pivot VALUES (1, 100), (2, 200), (3, 300), (4, 400), (5, 500), (6, 600);

SELECT 
  *
FROM 
  tq84_pivot
PIVOT (
  SUM(value) AS sum_value
  FOR (month) IN (1 AS month_jan,
                  2 AS month_feb,
                  3 AS month_mar,
                  4 AS month_apr,
                  5 AS month_mai,
                  6 AS month_jun,
                  7 AS month_jul,
                  8 AS month_aug,
                  9 AS month_sep,
                 10 AS month_oct,
                 11 AS month_nov,
                 12 AS month_dec)
);</code>
Salin selepas log masuk

Hasilnya seperti yang dijangkakan:

<code>MONTH_JAN | MONTH_FEB | MONTH_MAR | ...
---------|---------|---------|
100       | 200       | 300       | ...</code>
Salin selepas log masuk
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengubah Data Bulanan Rata dalam Oracle SQL untuk Analisis Lebih Mudah?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan