Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Mensimulasikan IS DISTINCT FROM dan TIDAK DISTINCT FROM dalam SQL Server 2008 R2?
Meniru ADALAH BERBEZA DAN TIDAK BERBEZA DARI dalam SQL Server 2008 R2
SQL Server 2008 R2 tidak mempunyai sokongan langsung untuk IS DISTINCT FROM
dan IS NOT DISTINCT FROM
. Walau bagaimanapun, kita boleh mencapai kefungsian yang sama menggunakan ungkapan SQL alternatif.
IS DISTINCT FROM
mengembalikan TRUE jika operan adalah tidak sama, atau jika salah satu operan adalah NULL. IS NOT DISTINCT FROM
mengembalikan BENAR jika operan adalah sama, atau jika kedua-dua operan adalah NULL.
Berikut ialah cara untuk meniru pengendali ini:
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>
Ungkapan ini merangkumi nilai NULL. Emulasi IS DISTINCT FROM
memastikan bahawa jika satu operan adalah NULL, hasilnya adalah BENAR melainkan kedua-duanya adalah NULL. Emulasi IS NOT DISTINCT FROM
memudahkan kepada semakan kesaksamaan langsung atau semakan untuk dwi NULL. Pendekatan ini mengelakkan kerumitan menangani hasil UNKNOWN
yang boleh timbul daripada logik boolean yang melibatkan NULL.
Atas ialah kandungan terperinci Bagaimana untuk Mensimulasikan IS DISTINCT FROM dan TIDAK DISTINCT FROM dalam SQL Server 2008 R2?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!