MySQL中的When判断语句详解
在MySQL中,When判断语句是一个非常实用的语句,它可以根据条件来决定执行哪一条语句,当满足条件时,执行该条件下的语句,否则执行其他的语句。
When的语法结构如下:
WHEN condition1 THEN statement1
WHEN condition2 THEN statement2
WHEN condition3 THEN statement3
...
ELSE statementn
END CASE
其中,condition是需要满足的条件,statement是需要执行的语句。
使用When判断语句需要注意的地方:
1. 如果所有条件都不满足,会执行ELSE语句;
2. 当条件满足时,只会执行对应的语句,不会像其他编程语言一样继续执行下去;
3. END CASE是必须的。
使用实例:
在一个用户表中,有姓名、年龄、性别三个字段,我们希望根据不同的性别来查询不同的用户。
当用户性别为男性时,查询名字为Tom的用户,并且年龄大于等于18岁;当用户性别为女性时,查询名字为Lucy的用户,并且年龄小于18岁。
SQL语句如下:
CASE sex
WHEN '男' THEN SELECT * FROM user WHERE name = 'Tom' AND age >= 18
WHEN '女' THEN SELECT * FROM user WHERE name = 'Lucy' AND age< 18
ELSE SELECT * FROM user
END CASE
通过上述语句,我们就可以根据不同的性别,查询出不同的用户信息了。