Rumah > pangkalan data > tutorial mysql > Bagaimanakah Saya Boleh Mengecualikan Nilai NULL daripada Pernyataan SELECT MySQL?

Bagaimanakah Saya Boleh Mengecualikan Nilai NULL daripada Pernyataan SELECT MySQL?

Susan Sarandon
Lepaskan: 2025-01-15 16:37:43
asal
171 orang telah melayarinya

How Can I Exclude NULL Values from MySQL SELECT Statements?

Menapis NULL dalam Pertanyaan PILIHAN MySQL

Soalan: Bagaimanakah saya boleh mendapatkan hanya nilai bukan nol menggunakan pernyataan MySQL SELECT?

Penyataan

Standard MySQL SELECT * termasuk semua lajur, malah yang mempunyai nilai NULL. Untuk mendapatkan semula data bukan nol sahaja, gunakan syarat IS NOT NULL:

<code class="language-sql">SELECT * 
FROM your_table
WHERE YourColumn IS NOT NULL;</code>
Salin selepas log masuk

Pertanyaan ini mengembalikan baris yang YourColumn tidak mengandungi NULL. MySQL juga menyokong penafian pengendali kesaksamaan null-safe, walaupun ini bukan SQL standard:

<code class="language-sql">SELECT *
FROM your_table
WHERE NOT (YourColumn <=> NULL);</code>
Salin selepas log masuk

Mengendalikan berbilang lajur memerlukan strategi yang berbeza. Satu kaedah menggunakan berbilang SELECT pernyataan dan UNION ALL:

<code class="language-sql">SELECT val1 AS val
FROM your_table
WHERE val1 IS NOT NULL
UNION ALL
SELECT val2
FROM your_table
WHERE val2 IS NOT NULL;</code>
Salin selepas log masuk

Pendekatan ini menyemak setiap lajur secara individu dan menggabungkan hasilnya. Walau bagaimanapun, ia boleh menjadi tidak cekap disebabkan oleh beberapa imbasan jadual.

Untuk mengelakkan berbilang imbasan, pertimbangkan CASE pernyataan dengan sambung silang:

<code class="language-sql">SELECT CASE idx
         WHEN 1 THEN val1
         WHEN 2 THEN val2
       END AS val
FROM your_table
CROSS JOIN (SELECT 1 AS idx UNION ALL SELECT 2) t
HAVING val IS NOT NULL;</code>
Salin selepas log masuk

Ini memilih nilai bukan nol pertama daripada val1 dan val2 untuk setiap baris dan menetapkannya pada lajur val.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengecualikan Nilai NULL daripada Pernyataan SELECT MySQL?. 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