mysql内置函数if用法介绍

发布时间:2019-09-02编辑:脚本学堂
本文介绍下,mysql内置函数if的用法,通过具体的例子,学习下if函数的具体使用方法,有需要的朋友参考下。

本节内容:
mysqlneizhihanshu/ target=_blank class=infotextkey>mysql内置函数if使用介绍

查看mysql对if函数的解释:
 

复制代码 代码示例:
mysql> ? if function
Name: 'IF FUNCTION'
Description:
Syntax:
IF(expr1,expr2,expr3)
If expr1 is TRUE (expr1 <> 0 and expr1 <> NULL) then IF() returns
expr2; otherwise it returns expr3. IF() returns a numeric or string
value, depending on the context in which it is used.
 

URL: http://dev.mysql.com/doc/refman/5.1/en/control-flow-functions.html
例子:
 

复制代码 代码示例:
mysql> SELECT IF(1>2,2,3);
        -> 3
mysql> SELECT IF(1<2,'yes','no');
        -> 'yes'
mysql> SELECT IF(STRCMP('test','test1'),'no','yes');
        -> 'no'
 

如果表达式1为TRUE,则返回表达式2的值,否则返回表达式3的值。

例子:一张学生表,表中有字段id、name、sex,分别表示ID,学生姓名、性别代号(0为女,1为男)
 

复制代码 代码示例:
mysql> select * from student;
+----+-------+-----+
| id | name  | sex |
+----+-------+-----+
|  1 | name1 |   0 |
|  2 | name2 |   0 |
|  3 | name3 |   1 |
|  4 | name4 |   0 |
+----+-------+-----+
4 rows in set (0.00 sec)
 

查出学生的相关信息:
 

复制代码 代码示例:
mysql> select name,if(sex=0,'女','男') as sex from student;
+-------+-----+
| name  | sex |
+-------+-----+
| name1 | 女  |
| name2 | 女  |
| name3 | 男  |
| name4 | 女  |
+-------+-----+
4 rows in set (0.00 sec)

通过以上sql语句可以直接获取学生的性别信息,而不需要在PHP端再次进行判断得到性别信息。