行轉列
使用CASE語句: SELECT SUM(CASE USER_NAME='A' THEN KILLS END) AS 'A', SUM(CASE USERNAME='B' THEN KILL END) AS 'B', SUM(CASE USERNAME='C' THEN KILL END) AS 'C' FROM A INNER JOIN B ON A.NAME=B.USERNAME; 通過CASE給滿足WHEN語句的數據返回SUM聚合函數要統計的數據,再將SUM進行重命名。推薦。 一般形式 SELECT NAME AS '姓名', SUM(CASE SUBJECT WHEN '數學' THEN MARK ELSE NULL END) AS '數學', SUM(CASE SUBJECT WHEN '英語' THEN MARK ELSE NULL END) AS '英語', SUM(CASE SUBJECT WHEN '語文' THEN MARK ELSE NULL END) AS '語文' FROM SUBJECT GROUP BY NAME; CASE語句中放原來表中要進行轉換的字段(如學科),對其進行分類(如數學、英語、語文)。 注意:要用聚合函數,最后要GROUP BY。
單列轉多行