Home > Database > Mysql Tutorial > body text

MYSQL IFNULL函数的使用_MySQL

WBOY
Release: 2016-06-01 13:29:30
Original
1244 people have browsed it

bitsCN.com

MYSQL IFNULL函数的使用

 

MYSQL IFNULL(expr1,expr2)          

如果expr1不是NULL,IFNULL()返回expr1,否则它返回expr2。IFNULL()返回一个数字或字符串值,取决于它被使用的上下文环境。

[sql] mysql> select IFNULL(1,0);                             -> 1        mysql> select IFNULL(0,10);                             -> 0        mysql> select IFNULL(1/0,10);                             -> 10        mysql> select IFNULL(1/0,yes);                             -> yes     
Copy after login

MYSQL IFNULL函数的使用_MySQL

IF(expr1,expr2,expr3)

如果expr1是TRUE(expr1<>0且expr1<>NULL),那么IF()返回expr2,否则它返回expr3。IF()返回一个数字或字符串值,取决于它被使用的上下文。

[sql] mysql> select IF(1>2,2,3);                             -> 3        mysql> select IF(1<2,yes,no);                             -> yes       mysql> select IF(strcmp(test,test1),yes,no);                             -> no     
Copy after login

expr1作为整数值被计算,它意味着如果你正在测试浮点或字符串值,你应该使用一个比较操作来做。

[sql] mysql> select IF(0.1,1,0);                             -> 0        mysql> select IF(0.1<>0,1,0);                             -> 1    
Copy after login

在上面的第一种情况中,IF(0.1)返回0,因为0.1被变换到整数值, 导致测试IF(0)。这可能不是你期望的。在第二种情况中,比较测试原来的浮点值看它是否是非零,比较的结果被用作一个整数。

CASE value WHEN [compare-value] THEN result [WHEN [compare-value] THEN result ...] [ELSE result] END                     CASE WHEN [condition] THEN result [WHEN [condition] THEN result ...] [ELSE result] END      
Copy after login

第一个版本返回result,其中value=compare-value。第二个版本中如果第一个条件为真,返回result。如果没有匹配的result值,那么结果在ELSE后的result被返回。如果没有ELSE部分,那么NULL被返回。

[sql] mysql> SELECT CASE 1 WHEN 1 THEN "one" WHEN 2 THEN "two" ELSE "more" END;                         -> "one"       mysql> SELECT CASE WHEN 1>0 THEN "true" ELSE "false" END;                         -> "true"       mysql> SELECT CASE BINARY "B" when "a" then 1 when "b" then 2 END;        -> NULL  
Copy after login

 


bitsCN.com
Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!