使用外连接时通常会出现连接条件放置错误。如果在 WHERE 子句中对提供空值的表施加限制,则连接通常等效于内连接。
原因在于:在搜索条件的任何输入都为 NULL 时,大多数搜索条件无法计算为 TRUE(真)。对提供空值的表的 WHERE 子句限制将限制值与 NULL 进行比较,导致从结果集中删除相应的行。保留的表中的行不再保留,因此连接是内连接。
例外的是有些比较在输入都为 NULL 时的值为真。这些包括 IS NULL、IS UNKNOWN、IS FALSE、IS NOT TRUE 和涉及 ISNULL 或 COALESCE 的表达式。
![]() |
使用DocCommentXchange讨论此页。
|
版权 © 2012, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.1 |