下面详述 NULL 值的属性。
FALSE 和 UNKNOWN 之间的差异
虽然 FALSE 和 UNKNOWN 都不返回值,但是 FALSE 和 UNKNOWN 之间存在着重要的逻辑差异;FALSE 的相反值 ("NOT FALSE") 是 TRUE,而 UNKNOWN 的相反值则不表示任何已知内容。例如,1 = 2
计算得到 FALSE,而 1 != 2
(1 不等于 2)计算得到 TRUE。
但是,如果比较中包括 NULL,则您不能对表达式取非以得到相对的一组行或相反的真假值。UNKNOWN 值保持 UNKNOWN。
用某个值替代 NULL 值 可以通过 ISNULL 内置函数用某个特定的值替代 NULL 值。替代的目的只是为了进行显示,未影响实际列值。语法是:
ISNULL( expression, value )
例如,使用以下语句从 Departments 中选择所有行,然后将列 DepartmentHeadID 中的所有 NULL 值显示为值 -1。
SELECT DepartmentID, DepartmentName, ISNULL( DepartmentHeadID, -1 ) AS DepartmentHead FROM Departments; |
计算得到 NULL 的表达式
如果所有操作数都为 NULL 值,则使用含算术或位运算符的表达式计算得到 NULL。例如,如果 column1 为 NULL,则 1 + column1
计算得到 NULL。请参见算术运算符和位运算符。
连接字符串和 NULL 如果您将字符串和 NULL 连接,则表达式计算得到字符串。例如,下面的语句返回字符串 abcdef:
SELECT 'abc' || NULL || 'def'; |
![]() |
使用DocCommentXchange 讨论此页。
|
版权 © 2010, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.0 |