1、case 的使用
一般语法:
CASE
WHEN 条件1 THEN 结果1
END
例子:
CASE SEX WHEN '1' THEN '男' ELSE '其他' END
2、case多条件用法
CASE
WHEN 条件1 THEN 结果1
WHEN 条件2 THEN 结果2
WHEN 条件3 THEN 结果3
.........
WHEN 条件N THEN 结果N
END
例子:
CASE SEX WHEN '1' THEN '男' WHEN '0' THEN '女' ELSE '其他' END
3、 case 配合聚合函数 sum 使用
SELECT
sum(
CASE co.course_name
WHEN '大学语文' THEN
sc.scores
ELSE
0
END
) '大学语文',
sum(
CASE co.course_name
WHEN '高等数学' THEN
sc.scores
ELSE
0
END
) '高等数学'
FROM
edu_student st
LEFT JOIN edu_score sc ON st.stu_id = sc.stu_id
LEFT JOIN edu_courses co ON co.course_no = sc.course_no
GROUP BY
st.stu_id
ORDER BY
NULL;