Database
 sql >> Baza danych >  >> RDS >> Database

Jak znaleźć rekordy z NULL w kolumnie?

Problem:

Chcesz znaleźć rekordy z NULL w kolumnie.

Przykład:

Nasza baza danych zawiera tabelę o nazwie children z danymi w czterech kolumnach:id , first_name , middle_name i last_name .

id imię drugie imię nazwisko
1 Jan Karol Jackson
2 Tomek NULL Thomson
3 Lisa Alicja NULL
4 Anna NULL Kowalski

Znajdźmy identyfikator, imię i nazwisko dzieci bez drugiego imienia (NULL w kolumnie middle_name ). Używamy do tego operatora IS NULL.

Rozwiązanie:

SELECT id,
  first_name,
  last_name
FROM children
WHERE middle_name IS NULL;

Oto wynik:

id imię nazwisko
2 Tomek Thomson
4 Anna Kowalski

Zwraca tylko rekordy z NULL w middle_name , więc Tom i Anne są obecni, ale nie John i Lisa, którzy mają drugie imiona.

Dyskusja:

Użyj IS NULL operator w warunku z WHERE, aby znaleźć rekordy z NULL w kolumnie. Oczywiście możesz również użyć dowolnego wyrażenia zamiast nazwy kolumny i sprawdzić, czy zwraca ona NULL. Nie potrzeba nic więcej niż nazwa kolumny i operator IS NULL (w naszym przykładzie middle_name IS NULL ). Umieść ten warunek w klauzuli WHERE, aby filtrować wiersze (w naszym przykładzie WHERE middle_name IS NULL ). Jeśli warunek jest spełniony, kolumna przechowuje NULL i zwracany jest ten wiersz. Powyższe zapytanie zwraca tylko dwa rekordy z dziećmi Tom i Anne, które nie mają drugiego imienia, więc kolumna middle_name przechowuje NULL.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Model danych dla aplikacji pogodowej

  2. SQL Union — kompleksowy przewodnik po operatorze UNION

  3. Jak zamawiać alfabetycznie w SQL

  4. Model bazy danych dla ankiety online. Część 1

  5. Czym jest kursor w SQL i jak go zaimplementować?