Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器

软件开发小程序制作系统集成与运维空间租用硬件开发视频监控技术咨询与支持——联系电话:0311-88999002/88999003

首页 / 数据库 / 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", "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;