时间:2023-10-27来源:系统城装机大师作者:佚名
1 | IF( expr1 , expr2 , expr3 ) |
expr1 的值为 TRUE,则返回值为 expr2
expr1 的值为FALSE,则返回值为 expr3
如下:
1 2 3 4 5 6 |
SELECT IF( TRUE ,1+1,1+2); -> 2 SELECT IF( FALSE ,1+1,1+2); -> 3 SELECT IF(STRCMP( "111" , "222" ), "不相等" , "相等" ); -> 不相等 |
那么这个 IF 有啥用处呢?举个例子:
查找出售价为 50 的书,如果是 java 书的话,就要标注为 已售完
那么对应的SQL语句该怎样去写呢?
1 | select *,if(book_name= 'java' , '已卖完' , '有货' ) as product_status from book where price =50 |
1 | IFNULL( expr1 , expr2 ) |
在 expr1 的值不为 NULL
的情况下都返回 expr1,否则返回 expr2,如下:
1 2 3 4 |
SELECT IFNULL( NULL , "11" ); -> 11 SELECT IFNULL( "00" , "11" ); -> 00 |
if(a,b,c)
a 为 true时,按照条件b
a 为false时,按照条件c
不仅可以用到where,order by 等子句中,也可以用到其他地方如
1 2 3 4 5 6 |
SELECT IF( TRUE ,1,2); -> 1 SELECT IF( FALSE ,1,2); -> 2 SELECT IF(STRCMP( "123" , "234" ), "不相等" , "相等" ); -> 不相等 |
并在其中可以套用其他函数
到此这篇关于sql中的 IF 条件语句的用法的文章就介绍到这了
2023-10-27
windows11安装SQL server数据库报错等待数据库引擎恢复句柄失败解决办法2023-10-27
SQL Server截取字符串函数操作常见方法2023-10-27
浅谈SELECT *会导致查询效率低的原因收缩数据文件通过将数据页从文件末尾移动到更靠近文件开头的未占用的空间来恢复空间,在文件末尾创建足够的空间后,可取消对文件末尾的数据页的分配并将它们返回给文件系统,本文给大家介绍SQL Server 数据库中的收缩数据...
2023-10-27