mysql 将列值转变为列的方法

前端技术 2023/09/04 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;

本文地址:https://www.stayed.cn/item/11813

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。