溫馨提示×

mysql unpivot的使用方法是什么

小億
207
2024-03-04 11:09:27
欄目: 云計算

在MySQL中,沒有內置的UNPIVOT函數來實現數據逆轉操作。但是可以使用UNION ALL語句來實現類似的功能。下面是一個示例:

假設有一個表格包含以下數據:

| id | name | score1 | score2 | score3 |
|----|------|--------|--------|--------|
| 1  | Alice| 80     | 85     | 90     |
| 2  | Bob  | 75     | 70     | 80     |
| 3  | Chris| 90     | 95     | 85     |

要將數據進行逆轉,可以使用以下SQL語句:

SELECT id, name, 'score1' AS score_type, score1 AS score
FROM table_name
UNION ALL
SELECT id, name, 'score2' AS score_type, score2 AS score
FROM table_name
UNION ALL
SELECT id, name, 'score3' AS score_type, score3 AS score
FROM table_name

執行以上SQL語句后,會得到如下結果:

| id | name | score_type | score |
|----|------|------------|-------|
| 1  | Alice| score1     | 80    |
| 1  | Alice| score2     | 85    |
| 1  | Alice| score3     | 90    |
| 2  | Bob  | score1     | 75    |
| 2  | Bob  | score2     | 70    |
| 2  | Bob  | score3     | 80    |
| 3  | Chris| score1     | 90    |
| 3  | Chris| score2     | 95    |
| 3  | Chris| score3     | 85    |

這樣就實現了將原始表中的列轉換為行的操作。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女