Jadual Kandungan
Apa yang dilakukan oleh Ifnull ()
Sintaks asas
Kes penggunaan biasa
1. Gantikan null dengan rentetan lalai
2. Mengendalikan batal dalam medan angka
3. Bersihkan hasil yang disatukan
Nota dan petua
Ringkasan
Rumah pangkalan data tutorial mysql Bagaimana cara menggunakan ifnull () dalam mysql?

Bagaimana cara menggunakan ifnull () dalam mysql?

Aug 22, 2025 pm 02:00 PM
mysql IFNULL()

ifnull () dalam mysql mengembalikan ungkapan pertama jika tidak batal, jika tidak, pulangan ungkapan kedua, menjadikannya sesuai untuk menggantikan nilai null dengan lalai; Sebagai contoh, ifnull (middle_name, 'n/a') memaparkan 'n/a' apabila middle_name adalah null, ifnull (diskaun, 0) memastikan pengiraan seperti harga - diskaun tetap sah, dan menggunakan ifnull dalam concat menghalang keseluruhan rentet

Bagaimana untuk menggunakan ifnull () dalam mysql?

Fungsi IFNULL() dalam MySQL adalah alat yang mudah tetapi berkuasa untuk mengendalikan nilai NULL dalam pertanyaan anda. Ia membolehkan anda menggantikan nilai lalai apabila NULL ditemui.

Apa yang dilakukan oleh Ifnull ()

IFNULL(expr1, expr2) mengambil dua hujah:

  • Jika expr1 tidak batal , ia mengembalikan expr1 .
  • Jika expr1 adalah batal , ia mengembalikan expr2 .

Ini amat berguna apabila anda berhadapan dengan data yang tidak lengkap dan ingin mengelakkan NULL yang muncul dalam hasil seperti dalam laporan, pengiraan, atau output aplikasi.

Sintaks asas

 Ifnull (expression_to_check, pengganti_value)

Kes penggunaan biasa

1. Gantikan null dengan rentetan lalai

Apabila menanyakan data pengguna, sesetengah bidang seperti middle_name mungkin menjadi NULL . Anda boleh menggantinya dengan pemegang tempat:

 Pilih 
    First_name,
    Ifnull (middle_name, 'n/a') sebagai middle_name,
    last_name
Dari pengguna;

Ini menunjukkan 'n/a' bukannya NULL untuk nama tengah yang hilang.

2. Mengendalikan batal dalam medan angka

Nilai NULL boleh memecahkan operasi matematik. Gunakan IFNULL() untuk merawat nombor yang hilang sebagai sifar:

 Pilih 
    Product_name,
    harga,
    Ifnull (diskaun, 0) sebagai diskaun,
    Harga - ifnull (diskaun, 0) sebagai final_price
Dari produk;

Tanpa IFNULL() , price - discount akan kembali NULL jika diskaun adalah NULL , walaupun harga sah.

3. Bersihkan hasil yang disatukan

Apabila menggabungkan rentetan, NULL boleh membuat keseluruhan keputusan NULL :

 Pilih 
    Concat (first_name, '', ifnull (middle_name, ''), '', last_name) sebagai full_name
Dari pengguna;

Ini mengelakkan mendapatkan NULL sebagai nama penuh hanya kerana nama tengah hilang.

Nota dan petua

  • IFNULL() adalah spesifik MySQL . Pangkalan data lain menggunakan fungsi yang berbeza (seperti COALESCE() atau ISNULL() ).
  • Ia hanya memeriksa ungkapan pertama. Untuk pelbagai kejatuhan, gunakan COALESCE() sebaliknya.
  • Jenis pulangan bergantung kepada konteks dan jenis argumen -MYSQL cuba untuk menentukan yang terbaik.

Sebagai contoh, menggunakan COALESCE() untuk lebih daripada dua pilihan:

 Coalesce (Phone_Home, Phone_Work, Phone_Mobile, 'No Phone')

Ini mengembalikan nilai non-null pertama di antara lajur yang disenaraikan.

Ringkasan

Gunakan IFNULL() apabila anda mahu cara yang cepat dan mudah dibaca untuk menggantikan nilai sandaran untuk NULL dalam MySQL. Ia sesuai untuk membersihkan output, mencegah kesilapan pengiraan, dan meningkatkan persembahan data.

Pada asasnya: jika perkara pertama wujud, gunakannya; Jika tidak, gunakan yang kedua. Mudah dan berkesan.

Atas ialah kandungan terperinci Bagaimana cara menggunakan ifnull () dalam mysql?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

Alat AI Hot

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Stock Market GPT

Stock Market GPT

Penyelidikan pelaburan dikuasakan AI untuk keputusan yang lebih bijak

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Cara menggunakan antara pengendali di mysql Cara menggunakan antara pengendali di mysql Aug 31, 2025 am 07:15 AM

Antara adalah pengendali dalam MySQL yang digunakan untuk menapis data dalam julat yang ditentukan dan mengandungi nilai sempadan; 1. Apabila digunakan dalam nombor, seperti SalaryBetween30000and50000, bersamaan dengan> = dan

Apakah fungsi substring_index () dalam mysql? Apakah fungsi substring_index () dalam mysql? Sep 02, 2025 am 02:50 AM

Substring_index () extractSasubstringFromastringbasedonadelimiterandocurrenceCount, kembali

Bagaimana cara menggunakan pernyataan ganti di MySQL? Bagaimana cara menggunakan pernyataan ganti di MySQL? Sep 01, 2025 am 01:09 AM

Ganti digunakan dalam MySQL untuk memasukkan baris baru. Sekiranya konflik utama atau utama utama berlaku, baris lama akan dipadamkan terlebih dahulu dan kemudian dimasukkan baris baru; 2. Senario menggunakan termasuk memastikan rekod wujud dan boleh dipadam dan dimasukkan semula; 3. Sintaks menyokong nilai, tetapkan dan pilih borang; 4. Contohnya menunjukkan bahawa operasi penggantian dicetuskan melalui kunci utama atau kunci unik; 5. Nota: ID kenaikan automatik boleh berubah, pencetus akan dipadam dan kemudian dimasukkan, prestasi adalah rendah, dan data akan hilang jika lajur tidak ditentukan; 6. Alternatif yang lebih selamat adalah menggunakan Insert ... onDupliceKeyUpdate untuk kemas kini dan bukan penggantian baris penuh.

Apakah tujuan pernyataan penggunaan di MySQL? Apakah tujuan pernyataan penggunaan di MySQL? Aug 27, 2025 am 07:02 AM

TheusestatementinmysqlselectsadefaultdatabaseForTheCurrentSession, AllowingsubeSeSeperationStobeperformedwithinthatdatabaseContextWithoutNeedingTofullyqualifytabenames;

Bagaimana menangani kesilapan dalam prosedur yang disimpan MySQL? Bagaimana menangani kesilapan dalam prosedur yang disimpan MySQL? Aug 30, 2025 am 12:50 AM

Gunakan pernyataan DeclareHandler untuk mengendalikan kesilapan secara berkesan dalam prosedur yang disimpan MySQL, dan untuk menangani pengecualian seperti SQLException dengan menentukan pemproses jenis terus atau keluar. Digabungkan dengan GetDiagnostics untuk mendapatkan butiran ralat, dan menggunakan urus niaga dan parameter keluar untuk memastikan integriti operasi dan ketepatan maklum balas, dengan itu meningkatkan keteguhan aplikasi pangkalan data.

Apakah pilihan innodb_file_per_table dalam mysql? Apakah pilihan innodb_file_per_table dalam mysql? Aug 31, 2025 am 04:30 AM

Theinnodb_file_per_tableoptionshouldbeenablowtoalloweachinnodbtableToHaveitsown.ibdfile, improvingspacereclamation, pengurusan, danStorageoptimization, withbenefitsoutweighingminorfilesystemovead, anditisenablydefaultin.6.

Cara menyertai jadual di mysql Cara menyertai jadual di mysql Sep 01, 2025 am 07:57 AM

Jadual yang bergabung dalam MySQL dilaksanakan melalui pernyataan pilih yang digabungkan dengan klausa Join. Jenis utama termasuk: 1.InnerJoin: Hanya baris yang sepadan dalam kedua -dua jadual dikembalikan; 2.LeftJoin: Kembalikan semua baris di meja kiri dan baris perlawanan meja kanan, jika tidak ada perlawanan, medan meja kanan adalah batal; 3.RightJoin: Kembalikan semua baris di meja kanan dan baris perlawanan meja kiri, jika tidak ada perlawanan, medan meja kiri adalah batal; 4.FullouterJoin: MySQL tidak menyokongnya secara langsung, tetapi boleh disimulasikan oleh leftjoin dan rightjoin digabungkan dengan kesatuan; Gunakan pada untuk menentukan syarat sambungan, dan disyorkan untuk menggunakan alias jadual untuk memudahkan pertanyaan. Sambungan pelbagai meja perlu dihubungkan dengan langkah demi langkah, dan ia harus memastikan bahawa lajur sambungan telah diindeks untuk meningkatkan prestasi.

Apa itu Auto_Increment di MySQL? Apa itu Auto_Increment di MySQL? Aug 28, 2025 am 07:35 AM

Auto_incrementinmysqlautomaticallygeneratesauniqueintegerforacolumn, yang biasanya digunakan untuk mendapatkan, yang tidak dapat dipertahankan

See all articles