例子一
student表

图一

图二
将图一数据转换为图二数据,sql如下:
select Sname '名字',Sage '生日',
CASE Ssex
WHEN '1' THEN'男'
when '2' then '女'
ELSE '其他'
END '性别'
from student;
例子二
stu_score

图一

图二

图三
将图一数据转换为图二数据,sql如下:
select `name` '姓名',
MAX(case course when '数学' then score else 0 end) '数学',
MAX(case course when '语文' then score else 0 end) '语文',
MAX(case course when '英语' then score else 0 end) '英语',
case sex when '1' then '男' when '2' then '女' else '其他' end '性别',
SUM(score) '总分'
from stu_score GROUP BY name;
将图一数据转换为图三数据,sql如下:
select SUM(case sex when '1' then score ELSE 0 end) '男',
SUM(case sex when '2' then score else 0 end) '女'
from stu_score