mysql教程

超轻量级php框架startmvc

mysql 将列值转变为列的方法

更新时间:2020-04-21 00:27:06 作者:startmvc
--创建库CREATETABLE`rate`( `uname`VARCHAR(300), `object`VARCHAR(300), `score`VARCHAR(300));--插入数


-- 创建库
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', '89'),
 ('aaa', 'physical', '89'),
 ('bbb', 'chinese', '67'),
 ('bbb', 'math', '75'),
 ('bbb', 'physical', '89');


-- 查询
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;

列值 转变