mysql中如何写判断语句

mysql中写判断语句的方法:

方法一.CASE函数

case函数语法:

CASE condition

WHEN value1 THEN returnvalue1

WHEN value2 THEN returnvalue2

WHEN value3 THEN returnvalue3

……

ELSE defaultvalue

END

举例:

SELECT username,(CASE sex  WHEN 1 THEN '男'  WHEN 2 THEN  '女'  ELSE '未知' END) as sex FROM user;

查询结果如图:

e08a6ceb7c5f565e980547c90d0981c.jpg

方法二.IF()函数

CASE函数可以实现非常复杂的逻辑判断,实现满足条件就A,否则就B这样简单的判断逻辑的话,CASE函数就显得臃肿。MYSQL提供了IF()函数用于简化这种逻辑判断,其语法格式如下:IF(condition,A,B)

如果condition条件为真,就返回A,否则返回B。所以如果有多个条件,就无法使用IF函数。IF()返回一个数字或字符串。

select username,if(sex=1,'男','女') as sex from user;

查询结果如图:

57558ec379007199e539b0a2a063727.jpg

可以看到,username为zhangsan的显示性别为女,因为我们条件是sex=1为男,其它都会女。所以IF函数用于只有两种情况的判断。mysql还有一个IFNULL(value1,value2)函数,这个函数一般用来替换NULL值的,我们知道NULL值是不能参与数值运算的。

方法三.字符串操作ELT()

语法:

ELT(N,str1,str2,str3,...)

如果 N = 1,返回 str1,如果N = 2,返回 str2,等等。如果 N 小于 1 或大于参数的数量,返回 NULL。

SELECT username,ELT(sex,'男','女','未知') as sex FROM user

查询结果如图:

2cb2e8899c8d85f8f8c7feeb24b90ae.jpg

更多相关免费学习推荐:mysql教程(视频)

以上是 mysql中如何写判断语句 的全部内容, 来源链接: utcz.com/z/539272.html

回到顶部