模擬與 SQL Server 2008 R2 中的模擬不同且不同
SQL Server 2008 R2 缺乏對 IS DISTINCT FROM
和 IS NOT DISTINCT FROM
的直接支援。 但是,我們可以使用替代 SQL 表達式來實現相同的功能。
IS DISTINCT FROM
傳回 TRUE。 如果運算元相等或兩個運算元皆為 NULL,IS NOT DISTINCT FROM
傳回 TRUE。
以下是複製這些運算子的方法:
IS DISTINCT FROM
:<code class="language-sql">(a <> b OR a IS NULL OR b IS NULL) AND NOT (a IS NULL AND b IS NULL)</code>
IS NOT DISTINCT FROM
:<code class="language-sql">(a = b OR a IS NULL AND b IS NULL)</code>
這些表達式考慮 NULL 值。 IS DISTINCT FROM
模擬可確保如果一個運算元為 NULL,則結果為 TRUE,除非 兩個 均為 NULL。 IS NOT DISTINCT FROM
模擬簡化為直接相等檢查或雙 NULL 檢查。 這種方法避免了處理涉及 NULL 的布林邏輯可能產生的 UNKNOWN
結果的複雜性。
以上是如何在SQL Server 2008 R2中模擬IS DISTINCT FROM和IS NOT DISTINCT FROM?的詳細內容。更多資訊請關注PHP中文網其他相關文章!