车荣汽车网
您的当前位置:首页mysql将列值转变为列的方法

mysql将列值转变为列的方法

来源:车荣汽车网


代码如下:
-- 创建库
CREATE TABLE `rate` (
 `uname` VARCHAR (300),
 `object` VARCHAR (300),
 `score` VARCHAR (300)
);

-- 插入数据
INSERT INTO test.rate (uname, object, score)
 VALUES('aaa', 'chinese', '67'),
 ('aaa', 'math', ''),
 ('aaa', 'physical', ''),
 ('bbb', 'chinese', '67'),
 ('bbb', 'math', '75'),
 ('bbb', 'physical', '');


-- 查询
SELECT DISTINCT uname AS '姓名',
SUM(CASE object
WHEN 'chinese' THEN score END)  AS '语文',
SUM(CASE object
WHEN 'math' THEN score END)  AS '数学',
SUM(CASE object
WHEN 'physical' THEN score END)  AS '物理' FROM rate GROUP BY uname;

显示全文