Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

mysql nilai yang berbeda tanpa string kosong dan NULL

Satu-satunya masalah Anda adalah Anda menggunakan OR alih-alih AND.

Mari kita lihat kasus di mana nilainya NULL:

  • CON.EMAILADDRESS IS NOT NULL => SALAH
  • CON.EMAILADDRESS != ' ' => NULL

SALAH ATAU NULL => NULL. Karena kriteria tidak menghasilkan TRUE, Anda tidak memilih NULL.

Dan jika nilainya adalah string kosong '', ' ', atau berapa pun panjangnya:

  • CON.EMAILADDRESS IS NOT NULL => BENAR
  • CON.EMAILADDRESS != ' ' => SALAH

BENAR ATAU SALAH => BENAR. Anda memilih string kosong.

Saya kira inilah yang membingungkan Anda:meskipun salah menggunakan OR alih-alih AND Anda masih menghapus beberapa string kosong, tetapi tidak semua.

Jadi:

WHERE CON.EMAILADDRESS IS NOT NULL AND CON.EMAILADDRESS != ' ';

Atau, seperti string apa pun != '' tidak boleh NULL (NULL != '' => NULL, bukan TRUE), cukup:

WHERE CON.EMAILADDRESS != '';


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bisakah sistem auth Laravel menggunakan database yang ada?

  2. Bagaimana cara mengekstrak kata ke-n dan menghitung kemunculan kata dalam string MySQL?

  3. Federasi Pengguna KeyCloak DAN PERAN DINAMIS

  4. Bagaimana cara memeriksa apakah tabel MySQL adalah UTF-8 dan memiliki storageEngine InnoDB?

  5. kesalahan php dan bahkan setelah mendefinisikan variabel