Rumah > pangkalan data > tutorial mysql > Apakah Perbezaan Antara '=' dan 'IS NULL' dalam Pertanyaan SQL?

Apakah Perbezaan Antara '=' dan 'IS NULL' dalam Pertanyaan SQL?

Susan Sarandon
Lepaskan: 2024-12-07 05:56:11
asal
739 orang telah melayarinya

What's the Difference Between

Memahami Perbezaan Antara "=" dan "IS NULL" dalam SQL

Apabila membina pertanyaan SQL, adalah penting untuk memahami perbezaan antara memberikan nilai " null" menggunakan operator "=" dan membandingkan lajur kepada "NULL" menggunakan "IS NULL" operator.

Menetapkan Nilai Null dengan "="

Operator "="" boleh digunakan untuk menetapkan lajur kepada nilai null. Contohnya, yang berikut pertanyaan memberikan nilai nol kepada lajur "Umur" jadual "Orang":

UPDATE Persons SET Age = NULL
WHERE Name = 'John Doe';
Salin selepas log masuk

Dalam kes ini, pengendali "=" digunakan untuk menetapkan lajur "Umur" untuk rekod di mana lajur "Nama" sama dengan "John Doe" dengan nol.

Membandingkan Lajur kepada NULL dengan "IS NULL"

Berbeza dengan tugasan, pengendali "IS NULL" digunakan dalam pertanyaan SQL untuk menentukan sama ada lajur mengandungi nilai nol Ia mengembalikan a nilai boolean, menunjukkan sama ada lajur adalah batal atau tidak Sebagai contoh, pertanyaan berikut memilih semua baris daripada jadual "Orang" di mana lajur "Umur" adalah batal:

SELECT *
FROM Persons
WHERE Age IS NULL;
Salin selepas log masuk

Perhatikan bahawa menggunakan "Umur. = NULL" dalam klausa WHERE tidak sah dan akan sentiasa mengembalikan palsu kerana nilai nol tidak boleh dibandingkan secara langsung untuk kesamaan. Sebaliknya, pengendali "IS NULL" mesti digunakan untuk perbandingan sedemikian.

Perbezaan Utama

  • Operator "=" digunakan untuk menetapkan nilai nol kepada lajur, manakala "IS NULL" digunakan untuk membandingkan lajur dengan nol.
  • "Umur = NULL" bukan ungkapan yang sah dalam klausa WHERE, manakala "Umur IS NULL" adalah betul.
  • "IS NULL" mengembalikan nilai boolean, menunjukkan sama ada nilai yang dibandingkan adalah nol atau tidak, manakala "=" digunakan untuk tugasan.

Atas ialah kandungan terperinci Apakah Perbezaan Antara '=' dan 'IS NULL' dalam Pertanyaan SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan