• 用Access的iif代替SQL中的IsNull()


    Access也有IsNull函数,但意义和参数却和T-SQL中的不同。

    在T-SQL(也就是SQL Server所支持的SQL语言)中,IsNull的作用是把空值替代成指定的值。然而在Access中,IsNull的作用仅仅是判断是否为空值,而且参数的个数也和T-SQL中的不一样,只有一个输入参数。

    庆幸的是Access支持iif,所以可以这样去替代:
    Select iif(IsNull( express ), value1, value2 ) From TableName

    iif(IsNull( express ), value1, value2 )
    相当于:
    If express Is Null Then
    Return value1
    Else
    Return value2
    End if

    举个例子,在SQL Server中:
    select IsNull(int_Filed1, 0) from Table1

    换作Access,则应该被改写为:
    select iif( IsNull(int_Filed1), 0, int_Filed1 ) from Table1

    在SQL中is null 和函数 IsNull是有区别的。 前者用于条件里面判断是否为NULL,而后者
    使用指定的替换值替换 NULL。
    ————————————————————————————————
    ISNULL
    使用指定的替换值替换 NULL。
    语法
    ISNULL ( check_expression , replacement_value )
    参数
    check_expression
    将被检查是否为 NULL的表达式。check_expression 可以是任何类型的。
    replacement_value
    在 check_expression 为 NULL时将返回的表达式。replacement_value 必须与 check_expresssion
    具有相同的类型。
    返回类型
    返回与 check_expression 相同的类型。
    注释
    如果 check_expression 不为 NULL,那么返回该表达式的值;否则返回 replacement_value.

    资料来源:http://www.papozhe.com/asp/675.html

  • 相关阅读:
    HDU 2328 POJ 3450 KMP
    挨踢江湖之十八
    Solr4.2迁移到新项目下异常:java.lang.NoSuchMethodError: org.apache.http.conn.scheme.Scheme.<init>
    滚动条
    《取悦症》听书笔记
    《洞见远胜创意》听书笔记-如何获得洞见
    《乌合之众》听书笔记
    《巨人的工具》听书笔记
    程序员职业生涯规划
    2017第20周摘录
  • 原文地址:https://www.cnblogs.com/hubj/p/1257345.html
Copyright © 2020-2023  润新知