Mysql
 sql >> Baza danych >  >> RDS >> Mysql

mysql odrębne wartości bez pustego ciągu i NULL

Jedynym problemem jest to, że używasz OR zamiast AND.

Spójrzmy na przypadek, w którym wartość wynosi NULL:

  • CON.EMAILADDRESS IS NOT NULL => FAŁSZ
  • CON.EMAILADDRESS != ' ' => BRAK

FAŁSZ LUB NULL => NULL. Ponieważ kryteria nie dają wartości TRUE, nie wybierasz wartości NULL.

A jeśli wartość jest pustym ciągiem '', '' ' lub jakakolwiek długość:

  • CON.EMAILADDRESS IS NOT NULL => PRAWDA
  • CON.EMAILADDRESS != ' ' => FAŁSZ

PRAWDA LUB FAŁSZ => PRAWDA. Wybierasz pusty ciąg.

Przypuszczam, że to cię zdezorientowało:pomimo błędnego użycia OR zamiast AND, nadal usunąłeś niektóre puste ciągi, ale nie wszystkie.

A więc:

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

Lub, jak każdy ciąg != '' nie może być NULL (NULL != '' => NULL, nie TRUE), po prostu:

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. Odtwórz wyjątek com.mysql.jdbc.exceptions.jdbc4.CommunicationsException z konfiguracją Spring, hibernacji i C3P0

  2. virtualenv pip mysqldb mac os X python

  3. Jak za pomocą Pentaho Kettle załadować wiele tabel z jednego stołu, zachowując jednocześnie integralność referencyjną?

  4. MySQL - zliczaj aktywnych/nieaktywnych/zbanowanych użytkowników i wybieraj użytkowników na podstawie statusu w jednym zapytaniu

  5. Jak połączyć się z serwerem MySQL po zainstalowaniu XAMPP w systemie Mac OS