ホームページ > データベース > mysql チュートリアル > SQL Server 2008 R2 で IS DISTINCT FROM と IS NOT DISTINCT FROM をシミュレートする方法は?

SQL Server 2008 R2 で IS DISTINCT FROM と IS NOT DISTINCT FROM をシミュレートする方法は?

Linda Hamilton
リリース: 2025-01-11 10:39:42
オリジナル
488 人が閲覧しました

How to Simulate IS DISTINCT FROM and IS NOT DISTINCT FROM in SQL Server 2008 R2?

SQL Server 2008 R2 でのエミュレーションは IS DISTINCT FROM および IS NOT DISTINCT FROM です

SQL Server 2008 R2 には、IS DISTINCT FROMIS NOT DISTINCT FROM の直接サポートがありません。 ただし、別の SQL 式を使用して同じ機能を実現できます。

IS DISTINCT FROM は、オペランドが等しくない場合、またはどちらかのオペランドが NULL の場合に TRUE を返します。 IS NOT DISTINCT FROM は、オペランドが等しい場合、または両方のオペランドが NULL の場合に 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 エミュレーションでは、1 つのオペランドが NULL の場合、両方 が NULL でない限り、結果が TRUE になることが保証されます。 IS NOT DISTINCT FROM エミュレーションは、直接の等価性チェックまたは二重 NULL のチェックを簡素化します。 このアプローチにより、NULL を含むブール ロジックから生じる可能性のある UNKNOWN 結果の処理の複雑さが回避されます。

以上がSQL Server 2008 R2 で IS DISTINCT FROM と IS NOT DISTINCT FROM をシミュレートする方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート