zoukankan      html  css  js  c++  java
  • mysql 中 isnull 和 ifnull 判断字段是否为null

    对于统计count(type)和avg(type) 都不起作用

    SQL中有ISNULL方法,介绍如下:

    ISNULL
    使用指定的替换值替换 NULL。

    语法
    ISNULL ( check_expression , replacement_value )

    参数

    check_expression
    将被检查是否为 NULL的表达式。check_expression 可以是任何类型的。
    replacement_value
    在 check_expression 为 NULL时将返回的表达式。replacement_value 必须与 check_expresssion 具有相同的类型。

    例如:

    SELECT count(ISNULL(Weight, 50))  FROM  Product;

    但是在mysql中,isnull只是用来判断是否为空,不能实现替换功能,照上面写的话,会直接报错(Incorrect parameter count in the call to native function 'isnull' Errornumber:1582 )。

    那么Mysql中如何实现SQL中的ISNULL方法呢?IFNULL( check_expression , replacement_value ),实现了SQL中的ISNULL方法。

     还是上面的例子:

    SELECT count(IFNULL(Weight, 50))  FROM  Product;

    就好了,就这样。

  • 相关阅读:
    BZOJ 1007 HNOI2008 水平可见的直线
    BZOJ 3155 Preprefix sum
    BZOJ 1036 ZJOI2008 树的统计
    BZOJ 1096 ZJOI2007 仓库建设
    BZOJ 1012 JSOI2008 最大数maxnumber
    BZOJ 1001 狼抓兔子
    BZOJ 1046 HAOI 上升序列
    [POI2015]PUS
    [NOI2011]道路修建
    POI 2015 KIN
  • 原文地址:https://www.cnblogs.com/ChineseMoonGod/p/5200394.html
Copyright © 2011-2022 走看看