代码先锋网 代码片段及技术文章聚合

MySQL 的IFNULL()、ISNULL()和NULLIF()函数

MySQL 的IFNULL()、ISNULL()和NULLIF()函数

一、IFNULL(expr1,expr2)用法

假如expr1不为NULL,则 IFNULL() 的返回值为expr1; 否则其返回值为 expr2。IFNULL()的返回值是数字或是字符串,具体情况取决于其所使用的语境。
  mysql>   SELECT   IFNULL(1,0);   
                        ->   1   
  mysql>   SELECT   IFNULL(NULL,10);   
                        ->   10   
  mysql>   SELECT   IFNULL(1/0,10);   
                        ->   10   
  mysql>   SELECT   IFNULL(1/0,'yes');   
                        ->   'yes'

列子

<!-- 判断库存数量 -->
<select id="checkStock" resultType="java.lang.Integer" >
    SELECT (0) FROM t_package_meals_price a
    <where>
        <if test="saleDate != null and saleDate !=''">
            AND a.sale_date = DATE_FORMAT(#{saleDate}, '%Y-%m-%d')
        </if>
        <if test="mealId != null and mealId != ''">
            AND a.meal_id = #{mealId}
        </if>
        <if test="personTypeId != null and personTypeId != ''">
            AND a.person_type_id = #{personTypeId}
        </if>
        <choose>
            <when test="isPart == 0"><!-- 直客 -->
                AND a.sale_sum_amount - IFNULL(a.sale_reserve_amount,0) >= #{num}
            </when>
            <when test="isPart == 1"><!-- 分销 -->
                AND a.part_sum_amount - IFNULL(a.part_reserve_amount,0) >= #{num}
            </when>
            <otherwise>
            </otherwise>
        </choose>
    </where>
</select>
版权声明:本文为qq_16570607原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_16570607/article/details/79387393

智能推荐

MySQL的if,case语句使用总结..MySql 里的IFNULL、NULLIF和ISNULL用法

MySql 里的IFNULL、NULLIF和ISNULL用法 今天用到了MySql里的isnull才发现他和MSSQL里的还是有点区别,现在简单总结一下: mysql中isnull,ifnull,nullif的用法如下: isnull(expr) 的用法: 如expr 为null,那么isnull() 的返回值为 1,否则返回值为 0。 mysql> select isnull(1+1); ...

Mysql 判空函数详解 isnull()、ifnull()、nullif()

文章目录 1 概述 2 示例 1 概述 2 示例 查询结果:...

mysql几个常用的判空函数:isnull, ifnull, nullif, coalesce

1. isnull(expr) 如果expr为null,则返回1,否则返回0 2. ifnull(expr1, expr2) 根isnull类似,expr1不为null的情况下,返回expr1,返回expr2 3. nullif(expr1, expr2) nullif和ifnull完全不同,它表示如果两个表达式相同,则返回null,否则返回expr1的值 个人感觉应该叫null if equal...

mysql中的ifnull()函数、if()函数和nullif()函数

MySQL中的IFNULL函数类似于Oracle中的NVL函数,其表达式为:IFNULL(expr1,expr2),含义是:如果第一个参数不为空,则返回第一个参数,否则返回第二个参数。 IF(expr1,expr2,expr3)类似于Oracle中的NVL2函数,含义是:如果第一个表达式的值为TRUE(不为0或null),则返回第二个参数的值,否则返回第三个参数的值。 NULLIF(expr1,e...

MySQL之IFNULL()、ISNULL、NULLIF用法

MySQL之IFNULL()、ISNULL、NULLIF用法 IFNULL语法说明 IFNULL(expr1,expr2) 如果 expr1 不是 NULL,IFNULL() 返回 expr1,否则它返回 expr2。 IFNULL()返回一个数字或字符串值,取决于它被使用的上下文环境。 举个栗子: 由于 expr1 是 1,不为 NULL,所以函数返回 1. 我们可以再试下,如果让 expr1 ...

猜你喜欢

mysql: is null,isnull,ifnull,nullif

首先,isnull,ifnull,nullif都是函数; 1. is null 和 isnull() var is null的作用和isnull(var)的作用一样,都是判断变量值是否为null 上述两句SQL执行结果是一样的: 2.ifnull ifnull(expression1,expression2) 如果expression1的值是null,就返回expression2;如果expres...

MySQL ifnull、nullif 等函数

网上有各种各样的博客,对于许多 MySQL 的函数都做了不同的解读和说明。我们在搜索的时候,往往直接输入自己想要查找的函数名,反而可能错过了系统规范的内容或者文章。 关于 MySQL 中各类函数,易百教程里面介绍的比较全,页面及书写布局也不错,好的内容不应该被埋没。链接如下: https://www.yiibai.com/mysql/functions.html#article-start 文章的...

mysql 中NULLIF() 、ISNULL()、COALESCE()函数的用法

在进行查询语句的时候会遇到各种条件判断的时候,在本篇文章中将讲解NULLIF() 、ISNULL()、COALESCE()函数的用法。 1. NULLIF(exp1,exp2):判读两个数值是否相等,如果exp1 = exp2 返回NULL,如果不相等,则返回exp1. 此结果为:NULL; 此结果为:3; 2. ISNULL(exp):当exp结果为NULL时返回1,否则返回0; 此结...

mysql if(),ifnull(),isnull()函数

ISNULL函数 IFNULL函数 IF函数 应用场景:判断一个订单是否使用...