Ostatnia aktualizacja: 1 października 2024
Czas czytania: 4 min
Spis treści

Zastosowanie IS NOT NULL

  • Filtrowanie danych: **IS NOT NULL** pozwala na usunięcie wierszy z tabeli, które mają puste wartości w określonych kolumnach. To jest przydatne podczas analizy danych, gdzie puste wartości mogą prowadzić do nieprawidłowych wniosków.
  • Weryfikacja danych: W przypadku wprowadzania danych, **IS NOT NULL** może być użyte do zapewnienia, że ​​żadna z kluczowych wartości nie jest pusta. To pomaga utrzymać integralność danych i zapobiega błędom w dalszych analizach.
  • Zarządzanie tabelą: **IS NOT NULL** może być użyte podczas tworzenia tabeli, aby określić, które kolumny muszą być wypełnione. To pomaga w utrzymaniu spójności danych i ułatwia zarządzanie tabelą.
  • Ulepszenie wydajności zapytań: W niektórych przypadkach, użycie **IS NOT NULL** może poprawić wydajność zapytań. BigQuery może zoptymalizować zapytanie, jeśli wie, że pewne kolumny nie mogą zawierać wartości NULL.

Przykład użycia w BigQuery

Załóżmy, że mamy tabelę o nazwie „Customers” z następującymi kolumnami: „CustomerID”, „Name”, „Email”, „City”, „Country”. Chcemy znaleźć wszystkich klientów, którzy mają podane imię i nazwisko (niepuste pole „Name”).


CREATE OR REPLACE TABLE Customers (
    CustomerID INT64,
    Name STRING,
    Email STRING,
    City STRING,
    Country STRING
);

INSERT INTO Customers (CustomerID, Name, Email, City, Country)
VALUES (1, 'Jan Kowalski', 'jan.kowalski@example.com', 'Warszawa', 'Polska'),
       (2, 'Anna Nowak', 'anna.nowak@example.com', 'Kraków', 'Polska'),
       (3, NULL, 'test@example.com', 'Gdańsk', 'Polska'),
       (4, 'Piotr Wiśniewski', NULL, 'Wrocław', 'Polska');

SELECT *
FROM Customers
WHERE Name IS NOT NULL;

Wynik tego zapytania wyświetli tylko klientów, którzy mają podane imię i nazwisko (wiersze 1 i 2). Wiersz 3 zostanie pominięty, ponieważ pole „Name” jest puste. Wiersz 4 również zostanie pominięty, ponieważ pole „Email” jest puste, ale to nie ma wpływu na działanie klauzuli **IS NOT NULL** w tym przykładzie.

Najczęstsze błędy i sposoby ich unikania

  • Niepoprawne użycie operatora: Upewnij się, że używasz **IS NOT NULL**, a nie **NOT NULL**. Te dwa operatory mają różne znaczenie.
  • Zapomnienie o sprawdzeniu typu danych: **IS NOT NULL** działa tylko na kolumnach, które mogą przechowywać wartości NULL. Jeśli kolumna jest typu „STRING”, to nie może zawierać wartości NULL, a użycie **IS NOT NULL** nie będzie miało wpływu na wynik zapytania.
  • Niewłaściwe użycie w kontekście JOIN: Podczas łączenia tabel (JOIN), **IS NOT NULL** może być użyte do filtrowania danych, ale należy upewnić się, że jest użyte w odpowiednim miejscu zapytania, aby uniknąć nieoczekiwanych wyników.

Optymalizacje i najlepsze praktyki

  • Użyj **IS NOT NULL** w klauzule WHERE: To jest najskuteczniejszy sposób na filtrowanie danych w BigQuery.
  • Użyj **IS NOT NULL** w klauzule HAVING: To jest przydatne, gdy chcesz filtrować wyniki zapytania agregacyjnego.
  • Użyj **IS NOT NULL** w klauzule ON: To jest przydatne podczas łączenia tabel (JOIN), aby filtrować dane przed połączeniem.
  • Użyj **NOT NULL** podczas tworzenia tabeli: To jest najlepszy sposób na zapewnienie, że ​​kolumna nigdy nie będzie zawierać wartości NULL. Dzięki temu BigQuery będzie mógł zoptymalizować zapytania dotyczące tej kolumny.

Porównanie z innymi dialektami SQL

W większości popularnych dialektów SQL, **IS NOT NULL** działa w sposób podobny do BigQuery. Jednakże, w niektórych dialektach, takich jak MySQL, istnieje alternatywny sposób na sprawdzenie niepustych wartości: **!IS NULL**. W BigQuery, **!IS NULL** nie jest obsługiwany.

Podsumowując, **IS NOT NULL** jest potężnym narzędziem w BigQuery, które pozwala na kontrolę nad integralnością danych i optymalizację zapytań. Zrozumienie jego zastosowań i najlepszych praktyk związanych z jego użyciem jest kluczowe dla każdego, kto pracuje z danymi w BigQuery.

Udostępnij wpis
Newsletter

Zapisz się do Newslettera

Zapisując się, wyrażasz zgodę na przetwarzanie Twoich danych do celów marketingowych, zgodnie z naszą polityką prywatności.

Optymalizacja kosztów BigQuery

Poradnik

10 sposobów na optymalizację kosztów BigQuery
Looker Studio Dashoard

Poradnik

Looker Studio dla Początkujących – Co to jest Looker Studio i jak z niego korzystać?
Grafika prezentująca BigQuery

Tutorial

BigQuery dla początkujących. Jakie są sposoby przechowywania danych w BigQuery?
Google Search Console Dashboard

Dashboard analityczny

Dashboard analityczny SEO – Looker Studio
Grafika pokazująca 5 dobrych praktyk podczas tworzenia narzędzia Business Intelligence

Poradnik

Najlepsze praktyki tworzenia dashboardów analitycznych i biznesowych
Grafika pokazująca odwrócony proces ETL

Poradnik

Replikacja danych do BigQuery  – Jedyny przewodnik po procesach ETL i ELT w GCP jakiego potrzebujesz
Ikona plików cookies

Ustawienia plików cookies

Używamy plików cookies, aby zapewnić Ci najlepsze wrażenia z korzystania z naszej strony. Możesz wybrać, które pliki cookies chcesz zaakceptować.
Ikona plików cookies

Informacje o plikach cookies

Szanujemy Twoją prywatność

Używamy plików cookies lub podobnych technologii w celu zapewnienia Ci dostępu do serwisu, usprawniania jego działania, profilowania i wyświetlania treści dopasowanych do Twoich potrzeb. W każdej chwili możesz zmienić ustawienia plików cookies lub podobnych technologii poprzez zmianę ustawień prywatności w przeglądarce bądź aplikacji lub zmianę swoich preferencji w zakładce Ustawienia cookies w stopce strony. Pamiętaj, że zmiana ta może spowodować brak dostępu do niektórych funkcji serwisu.
Dane osobowe dotyczące korzystania z serwisu, w tym zapisywane i odczytywane z plików cookies lub podobnych technologii będą przetwarzane w celu zapewnienia dostępu do serwisu, w celach marketingowych, w tym profilowania, w celach wewnętrznych związanych ze świadczeniem usług oraz prowadzeniem działalności gospodarczej, w tym dowodowych, analitycznych i statystycznych, wykrywania i eliminowania nadużyć oraz w celu wykonywania obowiązków wynikających z przepisów prawa.
Przysługuje Ci prawo do dostępu do danych, ich usunięcia, ograniczenia przetwarzania, przenoszenia, sprzeciwu, sprostowania oraz cofnięcia zgód w każdym czasie. Szczegółowe informacje dotyczące przetwarzania danych oraz przysługujących Ci uprawnień, informacje dotyczące plików cookies lub podobnych technologii, w tym dotyczące możliwości zarządzania ustawieniami prywatności, znajdują się w Polityce Prywatności.