Rumah >pangkalan data >tutorial mysql >Bagaimanakah Pengendali Sama Sama Null-Safe MySQL Berfungsi?

Bagaimanakah Pengendali Sama Sama Null-Safe MySQL Berfungsi?

DDD
DDDasal
2025-01-05 04:50:40524semak imbas

How Does MySQL's `` Null-Safe Equal Operator Work?

MySQL <=> Operator: Pemahaman Lebih Dalam

Dalam MySQL, <=> operator sering ditemui dalam pertanyaan, tetapi tujuannya mungkin agak samar-samar. Artikel ini bertujuan untuk menjelaskan maksudnya dan meneroka aplikasinya.

Apakah itu <=> Operator?

<=> operator dalam MySQL dikenali sebagai operator "null-safe equal". Ia berkelakuan sama dengan operator = biasa, yang membandingkan dua nilai dan mengembalikan 0 (tidak sama) atau 1 (sama). Walau bagaimanapun, <=> mengendalikan nilai NULL secara berbeza.

NULL Pengendalian

Tidak seperti operator = biasa, <=> menganggap nilai NULL sebagai nilai lain. Ini bermakna bahawa perbandingan nilai kepada NULL tidak akan menghasilkan NULL sebagai hasilnya. Sebaliknya, <=> mengembalikan 0 jika nilai tidak sama dan 1 jika sama.

Sebagai contoh, pertanyaan:

WHERE p.name <=> NULL

akan mengembalikan semua baris di mana lajur p.name adalah sama ada NULL atau bukan NULL.

Kebergunaan <=> Operator

The <=> operator amat berguna apabila kedua-dua operan mungkin mengandungi nilai NULL dan anda memerlukan hasil perbandingan yang konsisten. Selain itu, ia boleh digunakan dengan pernyataan yang disediakan, di mana pemegang tempat boleh menerima kedua-dua nilai skalar dan NULL tanpa memerlukan perubahan pada pertanyaan.

Operator Berkaitan

MySQL juga menyediakan dua pengendali lain untuk membandingkan dengan NULL: IS NULL dan IS NOT NULL. Pengendali ini adalah sebahagian daripada standard ANSI dan disokong oleh pangkalan data lain juga. Ia boleh dilihat sebagai pengkhususan <=> operator:

  • 'a' IS NULL ==> 'a' <=> NULL
  • 'a' BUKAN NULL ==> NOT('a' <=> NULL)

Sokongan

Sambil <=> adalah khusus MySQL, standard SQL:2003 memperkenalkan predikat serupa yang dipanggil IS [NOT] DISTINCT FROM. Predikat ini berfungsi sama dengan MySQL <=> pengendali.

Atas ialah kandungan terperinci Bagaimanakah Pengendali Sama Sama Null-Safe MySQL Berfungsi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn