189 8069 5689

告诉你Access与SQL中的IsNull(),ISNULL的区别

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

永和网站制作公司哪家好,找创新互联!从网页设计、网站建设、微信开发、APP开发、自适应网站建设等网站项目制作,到程序开发,运营维护。创新互联从2013年开始到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联。

在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。


本文名称:告诉你Access与SQL中的IsNull(),ISNULL的区别
本文地址:http://cdxtjz.cn/article/chcjge.html

其他资讯