MySQL中的case语句用法
MySQL中的case语句是一种条件语句,它可以根据条件判断,执行不同的操作。case语句可以用在select语句中,也可以用在update语句中,以及其他操作中。
case语句的语法
CASE WHEN 条件1 THEN 结果1 WHEN 条件2 THEN 结果2 ELSE 其他结果 END
上面的语法是case语句的基本结构,其中,条件1、条件2是需要判断的条件,结果1、结果2是条件成立时的结果,其他结果是所有条件都不成立时的结果。
case语句的使用方法
case语句可以用在select语句中,用来根据不同的条件,返回不同的结果,例如:
SELECT CASE WHEN score > 90 THEN '优秀' WHEN score > 80 THEN '良好' ELSE '不及格' END AS result FROM student
上面的语句用来查询学生的成绩,根据成绩的不同,返回不同的结果,如果成绩大于90,则返回“优秀”,如果成绩大于80,则返回“良好”,否则返回“不及格”。
case语句还可以用在update语句中,用来根据不同的条件,更新不同的值,例如:
UPDATE student SET score = CASE WHEN score > 90 THEN 100 WHEN score > 80 THEN 90 ELSE 0 END
上面的语句用来更新学生的成绩,如果成绩大于90,则更新为100,如果成绩大于80,则更新为90,否则更新为0。
case语句还可以用在其他操作中,例如,可以用来判断是否删除某条记录:
DELETE FROM student WHERE score = CASE WHEN score > 90 THEN 100 WHEN score > 80 THEN 90 ELSE 0 END
上面的语句用来删除学生的成绩,如果成绩大于90,则删除成绩为100的记录,如果成绩大于80,则删除成绩为90的记录,否则删除成绩为0的记录。
case语句可以用来判断条件,根据条件执行不同的操作,可以用在select、update等语句中,也可以用在其他操作中,是一种非常有用的语句。