Mysql
 sql >> база данни >  >> RDS >> Mysql

Разликата между MySQL НЕ Е NULL и !=''

Да, има голяма разлика между NULL стойност и празна/празна стойност.

Ето един ресурс който описва разликите.

Когато myText IS NULL :

  • myText IS NOT NULL оценява на FALSE
  • myText != '' оценява на NULL (което по същество се държи по същия начин като FALSE би в конкретния случай, който написахте)

Въпреки това, не трябва да придобивате навика да ги третирате еднакво, тъй като през повечето време те ще се държат различно:Например:

Да приемем, че имате таблица tbl :

id   text
1    NULL
2    
3    abc

Забележка: 1 съдържа NULL стойност, а 2 съдържа празен низ ('' ).

Ако изпълните следната заявка:

SELECT * FROM tbl WHERE text != ''

... ще върне запис 3.

Ако изпълните следната заявка:

SELECT * FROM tbl WHERE text IS NOT NULL

... ще върне записи 2 и 3.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL ПЪЛЕН ТЕКСТ Търсене в>1 таблица

  2. Може ли атрибут да обозначава една таблица над друга?

  3. MySql тригер, актуализиране на друга таблица при вмъкване

  4. Как да получите стойности от MySQL(5.6) колона, ако тя съдържа json документ като низ

  5. Има ли прост начин в моето приложение ASP.NET програмно да разберете дали mysql db сървърът не работи?