欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

mysql 轉列函數

錢斌斌1年前10瀏覽0評論

MySQL中的轉列函數是一種非常實用的功能,它可以將一行數據在多列之間進行轉換,使數據更加簡潔易讀。下面介紹兩種常用的轉列函數。

SELECT id,
MAX(IF(operate = 'A', amount, 0)) AS a_amount,
MAX(IF(operate = 'B', amount, 0)) AS b_amount,
MAX(IF(operate = 'C', amount, 0)) AS c_amount,
MAX(IF(operate = 'D', amount, 0)) AS d_amount
FROM table
GROUP BY id;

上述代碼使用了多個IF函數,根據操作類型將數據分類,并使用MAX函數將數據轉換到不同的列中。這種方法可以轉換任意數量的列,但是當數據量較大時速度會比較慢。

SELECT id,
GROUP_CONCAT(IF(operate = 'A', amount, NULL)) AS a_amount,
GROUP_CONCAT(IF(operate = 'B', amount, NULL)) AS b_amount,
GROUP_CONCAT(IF(operate = 'C', amount, NULL)) AS c_amount,
GROUP_CONCAT(IF(operate = 'D', amount, NULL)) AS d_amount
FROM table
GROUP BY id;

上述代碼使用了GROUP_CONCAT函數,可以將數據分組為逗號分隔的字符串,并將其放入不同的列中。這種方法速度比前一種方法快很多,但是它只能轉換有限數量的列。

總結來說,轉列函數是一種非常有用的功能,可以讓數據更加清晰明了。無論是哪種方法,都要根據實際情況選擇最適合的方法。