Jak pisać proste zapytania

Opublikowany: 2022-03-21

Słyszałeś kiedyś o SQL? Być może słyszałeś o tym w kontekście analizy danych, ale nigdy nie myślałeś, że będzie to dotyczyć Ciebie jako marketera. Albo możesz pomyśleć: „To jest dla zaawansowanych użytkowników danych. Nigdy bym tego nie zrobił”.

Cóż, nie mogłeś się bardziej mylić! Marketingowcy, którzy odnoszą największe sukcesy, działają w oparciu o dane, a jednym z najważniejszych elementów działania w oparciu o dane jest szybkie zbieranie danych z baz danych. SQL jest najpopularniejszym narzędziem do robienia właśnie tego.

Jeśli Twoja firma przechowuje już dane w bazie danych, być może będziesz musiał nauczyć się języka SQL, aby uzyskać dostęp do danych. Ale nie martw się — jesteś we właściwym miejscu, aby zacząć. Wskoczmy od razu.

Pobierz 10 szablonów Excel dla marketerów [Darmowy zestaw]

Dlaczego warto korzystać z SQL?

SQL (często wymawiany jako „sequel”) oznacza Structured Query Language i jest używany, gdy firmy mają mnóstwo danych, którymi chcą manipulować. Piękno SQL polega na tym, że każdy pracujący w firmie przechowującej dane w relacyjnej bazie danych może z niego korzystać. (I są szanse, że tak jest.)

Na przykład, jeśli pracujesz dla firmy programistycznej i chcesz pobrać dane o użytkowaniu od swoich klientów, możesz to zrobić za pomocą SQL. Jeśli pomagasz w tworzeniu witryny internetowej dla firmy zajmującej się handlem elektronicznym, która posiada dane o zakupach klientów, możesz użyć SQL, aby dowiedzieć się, którzy klienci kupują jakie produkty. Oczywiście to tylko kilka z wielu możliwych zastosowań.

Pomyśl o tym w ten sposób: Czy kiedykolwiek otworzyłeś bardzo duży zestaw danych w programie Excel, tylko po to, aby Twój komputer się zawiesił, a nawet wyłączył? SQL umożliwia dostęp tylko do niektórych części danych na raz, więc nie musisz pobierać wszystkich danych do pliku CSV, manipulować nimi i być może przeciążać programu Excel. Innymi słowy, SQL zajmuje się analizą danych, do której możesz być przyzwyczajony w Excelu.

Jak pisać proste zapytania SQL

Zanim zaczniemy, upewnij się, że masz aplikację do zarządzania bazą danych, która pozwoli Ci pobierać dane z Twojej bazy danych. Niektóre opcje obejmują MySQL lub Sequel Pro.

Zacznij od pobrania jednej z tych opcji, a następnie porozmawiaj z działem IT swojej firmy o tym, jak połączyć się z bazą danych. Wybrana opcja będzie zależeć od zaplecza produktu, więc skontaktuj się z zespołem ds. produktu, aby upewnić się, że wybierasz właściwą.

Zrozum hierarchię swojej bazy danych

Następnie ważne jest, aby przyzwyczaić się do bazy danych i jej hierarchii. Jeśli masz wiele baz danych danych, musisz dopracować lokalizację danych, z którymi chcesz pracować.

Załóżmy na przykład, że pracujemy z wieloma bazami danych o osobach w Stanach Zjednoczonych. Wpisz zapytanie „POKAŻ BAZY DANYCH;”. Wyniki mogą wskazywać, że masz kilka baz danych dla różnych lokalizacji, w tym jedną dla Nowej Anglii.

W swojej bazie danych będziesz mieć różne tabele zawierające dane, z którymi chcesz pracować. Korzystając z tego samego przykładu powyżej, powiedzmy, że chcemy dowiedzieć się, jakie informacje znajdują się w jednej z baz danych. Jeśli użyjemy zapytania „POKAŻ TABELĘ w Nowej Anglii;”, odkryjemy, że mamy tabele dla każdego stanu w Nowej Anglii: people_connecticut, people_maine, people_massachusetts, people_newhampshire, people_rhodeisland i people_vermont.

Na koniec musisz dowiedzieć się, które pola znajdują się w tabelach. Pola to określone fragmenty danych, które możesz pobrać ze swojej bazy danych. Na przykład, jeśli chcesz pobrać czyjś adres, nazwa pola może nie być po prostu „adresem” — może być podzielona na adres_miasto, adres_stan, adres_zip. Aby to rozgryźć, użyj zapytania „Opisz people_massachusetts;”. Zawiera listę wszystkich danych, które można pobrać za pomocą SQL.

Zróbmy szybki przegląd hierarchii za pomocą naszego przykładu z Nowej Anglii:

  • Nasza baza danych to: Nowa Anglia.
  • Nasze tabele w tej bazie danych to: people_connecticut, people_maine, people_massachusetts, people_newhampshire, people_rhodeisland i people_vermont.
  • Nasze pola w tabeli people_massachusetts to: adres_miasto, adres_stan, adres_zip, kolor włosów, wiek, imię i nazwisko.

Teraz napiszemy kilka prostych zapytań SQL, aby pobrać dane z naszej bazy danych NewAnglia.

Podstawowe zapytania SQL

Aby dowiedzieć się, jak napisać zapytanie SQL, użyjmy następującego przykładu:

Kim są ludzie, którzy mają rude włosy w Massachusetts i urodzili się w 2003 roku w porządku alfabetycznym?

WYBIERZ

WYBIERZ wybiera pola, które chcesz wyświetlić na wykresie. Jest to konkretna informacja, którą chcesz pobrać ze swojej bazy danych. W powyższym przykładzie chcemy znaleźć osoby , które spełniają pozostałe kryteria.

Oto nasze zapytanie SQL:

WYBIERZ

Imię,

nazwisko

;

Z

FROM wskazuje tabelę, z której chcesz pobrać dane. We wcześniejszej części dowiedzieliśmy się, że istnieje sześć tabel dla każdego z sześciu stanów w Nowej Anglii: people_connecticut, people_maine, people_massachusetts, people_newhampshire, people_rhodeisland i people_vermont. Ponieważ szukamy konkretnie osób z Massachusetts, pobierzemy dane z tej konkretnej tabeli.

Oto nasze zapytanie SQL:

WYBIERZ

Imię,

nazwisko

Z

people_massachusetts

;

GDZIE

WHERE umożliwia filtrowanie zapytania, aby było bardziej szczegółowe. W naszym przykładzie chcemy przefiltrować nasze zapytanie tak, aby obejmowało tylko osoby z rudymi włosami, które urodziły się w 2003 roku. Zacznijmy od filtra rudych włosów.

Oto nasze zapytanie SQL:

WYBIERZ

Imię,

nazwisko

Z

people_massachusetts

GDZIE

hair_color=”czerwony”

;

hair_color mógł być częścią początkowej instrukcji SELECT, gdybyś chciał spojrzeć na wszystkich ludzi w Massachusetts wraz z ich kolorem włosów. Ale jeśli chcesz filtrować, aby zobaczyć tylko osoby z rudymi włosami, możesz to zrobić za pomocą instrukcji WHERE.

POMIĘDZY

Oprócz równości (=), BETWEEN to kolejny operator, którego możesz użyć w zapytaniach warunkowych. Instrukcja BETWEEN jest prawdziwa dla wartości, które mieszczą się między określonymi wartościami minimalnymi i maksymalnymi.

W naszym przypadku możemy użyć BETWEEN do pobrania rekordów z określonego roku, np. 2003. Oto zapytanie:

WYBIERZ

Imię,

nazwisko

Z

people_massachusetts

GDZIE

data_urodzenia POMIĘDZY '2003-01-01' A '2003-12-31'

;

ORAZ

AND umożliwia dodanie dodatkowych kryteriów do wyciągu WHERE. Pamiętaj, że chcemy filtrować według osób, które miały rude włosy, oprócz osób urodzonych w 2003 roku. Skoro nasze stwierdzenie WHERE jest uwzględniane przez kryteria rudych włosów, w jaki sposób możemy również filtrować według konkretnego roku urodzenia?

W tym miejscu pojawia się instrukcja AND. W tym przypadku instrukcja AND jest właściwością daty — ale niekoniecznie musi tak być. (Uwaga: sprawdź format dat z zespołem ds. produktu, aby upewnić się, że są one w odpowiednim formacie.)

Oto nasze zapytanie SQL:

WYBIERZ

Imię,

nazwisko

Z

people_massachusetts

GDZIE

hair_color=”czerwony”

ORAZ

data_urodzenia POMIĘDZY '2003-01-01' A '2003-12-31'

;

LUB

OR może być również użyty z instrukcją WHERE. W przypadku AND oba warunki muszą być spełnione, aby pojawiły się w wynikach (np. kolor włosów musi być rudy i musi urodzić się w 2003 r.). W przypadku OR każdy warunek musi być prawdziwy, aby pojawił się w wynikach (np. kolor włosów musi być rudy lub musi pochodzić z 2003 r.).

Oto jak wygląda instrukcja OR w działaniu:

WYBIERZ

Imię,

nazwisko

Z

people_massachusetts

GDZIE

kolor_włosów = 'czerwony'

LUB

data_urodzenia POMIĘDZY '2003-01-01' A '2003-12-31'

;

NIE

NOT jest używany w instrukcji WHERE do wyświetlania wartości, w których określony warunek jest nieprawdziwy. Gdybyśmy chcieli wyciągnąć wszystkich mieszkańców Massachusetts bez rudych włosów, możemy użyć następującego zapytania:

WYBIERZ

Imię,

nazwisko

Z

people_massachusetts

GDZIE NIE

kolor_włosów = 'czerwony'

;

ZAMÓW PRZEZ

Obliczenia i organizację również można wykonać w zapytaniu. W tym miejscu wkraczają funkcje ORDER BY i GROUP BY. Najpierw przyjrzymy się naszym zapytaniom SQL za pomocą funkcji ORDER BY, a następnie GROUP BY. Następnie przyjrzymy się pokrótce różnicy między nimi.

Klauzula ORDER BY umożliwia sortowanie według dowolnych pól określonych w instrukcji SELECT. W tym przypadku uporządkujmy według nazwiska.

Oto nasze zapytanie SQL:

WYBIERZ

Imię,

nazwisko

Z

people_massachusetts

GDZIE

kolor_włosów = 'czerwony'

ORAZ

data_urodzenia POMIĘDZY '2003-01-01' A '2003-12-31'

ZAMÓW PRZEZ

nazwisko

;

GRUPUJ WEDŁUG

GROUP BY jest podobna do ORDER BY, ale agreguje dane, które mają podobieństwa. Na przykład, jeśli masz jakiekolwiek duplikaty w swoich danych, możesz użyć funkcji GRUPUJ WEDŁUG, aby policzyć liczbę duplikatów w swoich polach.

Oto twoje zapytanie SQL:

WYBIERZ

Imię,

nazwisko

Z

people_massachusetts

GDZIE

kolor_włosów = 'czerwony'

ORAZ

data_urodzenia POMIĘDZY '2003-01-01' A '2003-12-31'

GRUPUJ WEDŁUG

nazwisko

;

ZAMÓWIENIE PRZEZ VS. GRUPUJ WEDŁUG

Aby pokazać różnicę między instrukcją ORDER BY a instrukcją GROUP BY, wyjdźmy na chwilę poza nasz przykład z Massachusetts i przyjrzyjmy się bardzo prostemu zbiorowi danych. Poniżej znajduje się lista czterech numerów identyfikacyjnych i nazwisk pracowników.

a table of four names and IDs as a result of sql queries

Gdybyśmy na tej liście użyli wyrażenia ORDER BY, nazwiska pracowników zostałyby posortowane w kolejności alfabetycznej. Wynik wyglądałby tak:

a table of four names and IDs as a result of sql queries with the name Peter appearing twice at the bottom

Gdybyśmy zamiast tego mieli użyć instrukcji GROUP BY, pracownicy byliby liczeni na podstawie tego, ile razy pojawili się w początkowej tabeli. Zauważ, że Peter pojawił się dwukrotnie w początkowej tabeli, więc wynik będzie wyglądał tak:

sql query examples: a table of three names and IDs

Ze mną do tej pory? OK, wróćmy do zapytania SQL, które tworzyliśmy o rudowłosych ludziach z Massachusetts, którzy urodzili się w 2003 roku.

LIMIT

W zależności od ilości danych, które masz w bazie danych, uruchomienie zapytań może zająć dużo czasu. Może to być frustrujące, zwłaszcza jeśli popełniłeś błąd w zapytaniu i musisz teraz poczekać, zanim przejdziesz dalej. Jeśli chcesz przetestować zapytanie, funkcja LIMIT pozwala ograniczyć liczbę otrzymywanych wyników.

Na przykład, jeśli podejrzewamy, że w Massachusetts są tysiące osób, które mają rude włosy, możemy przetestować nasze zapytanie za pomocą LIMIT, zanim uruchomimy je w całości, aby upewnić się, że otrzymujemy żądane informacje. Załóżmy na przykład, że w naszym wyniku chcemy zobaczyć tylko pierwszych 100 osób.

Oto nasze zapytanie SQL:

WYBIERZ

Imię,

nazwisko

Z

people_massachusetts

GDZIE

kolor_włosów = 'czerwony'

ORAZ

data_urodzenia POMIĘDZY '2003-01-01' A '2003-12-31'

ZAMÓW PRZEZ

nazwisko

LIMIT

100

;

WŁÓŻ W

Oprócz pobierania informacji z relacyjnej bazy danych, SQL może być również używany do modyfikowania zawartości bazy danych. Oczywiście będziesz potrzebować uprawnień do wprowadzania zmian w danych Twojej firmy. Ale jeśli kiedykolwiek zarządzasz zawartością bazy danych, udostępnimy kilka zapytań, które powinieneś znać.

Pierwsza to instrukcja INSERT INTO, która służy do umieszczania nowych wartości w bazie danych. Jeśli chcemy dodać nową osobę do tabeli Massachusetts, możemy to zrobić, podając najpierw nazwę tabeli, którą chcemy zmodyfikować, oraz pola w tabeli, do której chcemy dodać. Następnie piszemy VALUE z każdą odpowiednią wartością, którą chcemy dodać.

Oto, jak mogłoby wyglądać to zapytanie:

WŁÓŻ W

people_massachusetts (adres_miasto, adres_stan, adres_zip, kolor włosów, wiek, imię, nazwisko)

WARTOŚCI

(Cambridge, Massachusetts, 02139, blondynka, 32 lata, Jane, Doe)

;

Alternatywnie, jeśli dodajesz wartość do każdego pola w tabeli, nie musisz określać pól. Wartości zostaną dodane do kolumn w kolejności, w jakiej są wymienione w zapytaniu.

WŁÓŻ W

people_massachusetts

WARTOŚCI

(Cambridge, Massachusetts, 02139, blondynka, 32 lata, Jane, Doe)

;

Jeśli chcesz dodać wartości tylko do określonych pól, musisz je określić. Załóżmy, że chcemy wstawić tylko rekord zawierający imię, nazwisko i stan_adresu — możemy użyć następującego zapytania:

WŁÓŻ W

people_massachusetts (imię, nazwisko, stan_adresu)

WARTOŚCI

(Jane, Łania, Massachusetts)

;

AKTUALIZACJA

Jeśli chcesz zastąpić istniejące wartości w bazie danych innymi wartościami, możesz użyć UPDATE. Co się stanie, jeśli na przykład ktoś zostanie zarejestrowany w bazie danych jako osoba z rudymi włosami, podczas gdy w rzeczywistości ma brązowe włosy? Możemy zaktualizować ten rekord za pomocą instrukcji UPDATE i WHERE:

AKTUALIZACJA

people_massachusetts

USTAWIĆ

hair_color = 'brązowy'

GDZIE

first_name = 'Jana'

ORAZ

last_name = 'Doe'

;

Lub załóżmy, że w Twojej tabeli występuje problem, w którym niektóre wartości „stan_adresu” są wyświetlane jako „Massachusetts”, a inne jako „MA”. Aby zmienić wszystkie wystąpienia „MA” na „Massachusetts”, możemy użyć prostego zapytania i zaktualizować wiele rekordów jednocześnie:

AKTUALIZACJA

people_massachusetts

USTAWIĆ

address_state = 'Massachusetts'

GDZIE

stan_adresu = MA

;

Zachowaj ostrożność podczas korzystania z UPDATE. Jeśli nie określisz, które rekordy mają zostać zmienione za pomocą instrukcji WHERE, zmienisz wszystkie wartości w tabeli.

KASOWAĆ

DELETE usuwa rekordy z Twojej tabeli. Podobnie jak w przypadku UPDATE, pamiętaj o dołączeniu instrukcji WHERE, aby przypadkowo nie usunąć całej tabeli.

Lub, jeśli zdarzyło nam się znaleźć kilka rekordów w naszej tabeli people_massachusetts, które faktycznie mieszkały w Maine, możemy szybko usunąć te wpisy, kierując na pole adres_stan, na przykład:

USUŃ Z

people_massachusetts

GDZIE

adres_stan = 'maine'

;

Bonus: Zaawansowane porady dotyczące SQL

Teraz, gdy nauczyłeś się tworzyć proste zapytania SQL, omówmy kilka innych sztuczek, których możesz użyć, aby podnieść poziom swoich zapytań, zaczynając od gwiazdki.

* (gwiazdka)

Gdy dodasz znak gwiazdki do zapytania SQL, poinformuje on zapytanie, że chcesz uwzględnić w wynikach wszystkie kolumny danych.

W przykładzie z Massachusetts, którego używaliśmy, mieliśmy tylko dwie nazwy kolumn: imię i nazwisko. Ale załóżmy, że mamy 15 kolumn danych, które chcemy zobaczyć w naszych wynikach — trudno byłoby wpisać wszystkie 15 nazw kolumn w instrukcji SELECT. Zamiast tego, jeśli zastąpisz nazwy tych kolumn gwiazdką, zapytanie będzie wiedziało, że należy pobrać wszystkie kolumny do wyników.

Oto jak wyglądałoby zapytanie SQL:

WYBIERZ

*

Z

people_massachusetts

GDZIE

hair_color=”czerwony”

ORAZ

data_urodzenia POMIĘDZY '2003-01-01' A '2003-12-31'

ZAMÓW PRZEZ

nazwisko

LIMIT

100

;

% (symbol procentu)

Symbol procentu jest znakiem wieloznacznym, co oznacza, że ​​może reprezentować jeden lub więcej znaków w wartości bazy danych. Symbole wieloznaczne są pomocne przy wyszukiwaniu rekordów, które mają wspólne znaki. Są one zwykle używane z operatorem LIKE w celu znalezienia wzorca w danych.

Na przykład, jeśli chcielibyśmy uzyskać nazwiska wszystkich osób w naszej tabeli, których kod pocztowy zaczyna się od „02”, możemy napisać to zapytanie:

WYBIERZ

Imię,

nazwisko

GDZIE

adres_zip LIKE '02%'

;

Tutaj „%” oznacza dowolną grupę cyfr po „02”, więc to zapytanie wyświetla dowolny rekord z wartością address_zip, która zaczyna się od „02”.

OSTATNIE 30 DNI

Kiedy zacząłem regularnie używać SQL, odkryłem, że jedno z moich zapytań dotyczyło próby znalezienia osób, które podjęły działanie lub spełniły określony zestaw kryteriów w ciągu ostatnich 30 dni.

Załóżmy, że dzisiaj jest 1 grudnia 2021 r. Możesz utworzyć te parametry, ustawiając zakres data_urodzenia między 1 listopada 2021 a 30 listopada 2021. To zapytanie SQL wyglądałoby tak:

WYBIERZ

Imię,

nazwisko

Z

people_massachusetts

GDZIE

hair_color=”czerwony”

ORAZ

data_urodzenia POMIĘDZY '2021-11-01' A '2021-11-30'

ZAMÓW PRZEZ

nazwisko

LIMIT

100

;

Ale wymagałoby to zastanowienia się, które daty obejmują ostatnie 30 dni, i musiałby stale aktualizować to zapytanie.

Zamiast tego, aby daty automatycznie obejmowały ostatnie 30 dni bez względu na dzień, możesz wpisać to w AND: data_urodzenia >= (DATE_SUB(CURDATE(),INTERVAL 30))

(Uwaga: warto dokładnie sprawdzić tę składnię w zespole ds. produktu, ponieważ może się ona różnić w zależności od oprogramowania używanego do pobierania zapytań SQL).

Twoje pełne zapytanie SQL wyglądałoby zatem tak:

WYBIERZ

Imię,

nazwisko

Z

people_massachusetts

GDZIE

hair_color=”czerwony”

ORAZ

data_urodzenia >= (DATE_SUB(CURDATE(),INTERVAL 30))

ZAMÓW PRZEZ

nazwisko

LIMIT

100

;

LICZYĆ

W niektórych przypadkach możesz chcieć policzyć, ile razy pojawia się kryterium pola. Załóżmy na przykład, że chcesz policzyć, ile razy różne kolory włosów pojawiają się u osób, które łączysz z Massachusetts. W takim przypadku przyda się LICZBA, więc nie musisz ręcznie dodawać liczby osób o różnych kolorach włosów ani eksportować tych informacji do Excela.

Oto jak wyglądałoby to zapytanie SQL:

WYBIERZ

kolor włosów,

LICZBA(kolor_włosów)

Z

people_massachusetts

ORAZ

data_urodzenia POMIĘDZY '2003-01-01' A '2003-12-31'

GRUPUJ WEDŁUG

kolor włosów

;

AVG

AVG oblicza średnią atrybutu w wynikach zapytania, wyłączając wartości NULL (puste). W naszym przykładzie możemy użyć AVG do obliczenia średniego wieku mieszkańców stanu Massachusetts w naszym zapytaniu.

Oto jak może wyglądać nasze zapytanie SQL:

WYBIERZ

ŚREDNIA(wiek)

Z

people_massachusetts

;

SUMA

SUMA to kolejne proste obliczenie, które można wykonać w SQL. Oblicza łączną wartość wszystkich atrybutów z zapytania. Jeśli więc chcielibyśmy zsumować wszystkie wieki mieszkańców Massachusetts, możemy użyć tego zapytania:

WYBIERZ

SUMA(wiek)

Z

people_massachusetts

;

MIN i MAX

MIN i MAX to dwie funkcje SQL, które dają najmniejszą i największą wartość danego pola. Możemy go użyć do identyfikacji najstarszych i najmłodszych członków naszego stołu Massachusetts:

To zapytanie da nam zapis najstarszych:

WYBIERZ

MIN(wiek)

Z

people_massachusetts

;

A to zapytanie daje nam najstarsze:

WYBIERZ

MAX(wiek)

Z

people_massachusetts

;

PRZYSTĄP

Może się zdarzyć, że będziesz potrzebować dostępu do informacji z dwóch różnych tabel w jednym zapytaniu SQL. W SQL można to zrobić za pomocą klauzuli JOIN.

(Dla osób zaznajomionych z formułami programu Excel jest to podobne do używania formuły WYSZUKAJ.PIONOWO, gdy trzeba połączyć informacje z dwóch różnych arkuszy w programie Excel).

Załóżmy, że mamy jedną tabelę zawierającą dane o identyfikatorach użytkowników wszystkich mieszkańców stanu Massachusetts i ich datach urodzin. Ponadto mamy całkowicie osobną tabelę zawierającą identyfikatory użytkowników wszystkich mieszkańców Massachusetts i ich kolor włosów.

Jeśli chcielibyśmy poznać kolor włosów mieszkańców Massachusetts urodzonych w 2003 roku, musielibyśmy uzyskać dostęp do informacji z obu tabel i połączyć je. Działa to, ponieważ obie tabele współdzielą pasującą kolumnę: identyfikatory użytkowników.

Ponieważ wywołujemy pola z dwóch różnych tabel, nasza instrukcja SELECT również się nieznacznie zmieni. Zamiast po prostu wymieniać pola, które chcemy uwzględnić w naszych wynikach, musimy określić, z której tabeli pochodzą. (Uwaga: funkcja gwiazdki może się tutaj przydać, więc zapytanie uwzględnia obie tabele w wynikach).

Aby określić pole z konkretnej tabeli wystarczy połączyć nazwę tabeli z nazwą pola. Na przykład nasza instrukcja SELECT powie „table.field” — z kropką oddzielającą nazwę tabeli i nazwę pola.

W tym przypadku zakładamy również kilka rzeczy:

  1. Tabela dat urodzenia Massachusetts zawiera następujące pola: imię, nazwisko, identyfikator użytkownika, data urodzenia
  2. Tabela kolorów włosów Massachusetts zawiera następujące pola: user_id, hair_color

Twoje zapytanie SQL wyglądałoby zatem tak:

WYBIERZ

data urodzenia_massachusetts.first_name,

data urodzenia_massachusetts.last_name

Z

birthdate_massachusetts DOŁĄCZ do haircolor_massachusetts UŻYWAJĄC (user_id)

GDZIE

hair_color=”czerwony”

ORAZ

data_urodzenia POMIĘDZY '2003-01-01' A '2003-12-31'

ZAMÓW PRZEZ

nazwisko

;

To zapytanie połączyłoby dwie tabele przy użyciu pola „user_id”, które pojawia się zarówno w tabeli birthdate_massachusetts, jak i haircolor_massachusetts. Możesz wtedy zobaczyć tabelę ludzi urodzonych w 2003 roku, którzy mają rude włosy.

WALIZKA

Użyj instrukcji CASE, jeśli chcesz zwrócić różne wyniki do zapytania w zależności od tego, który warunek jest spełniony. Warunki są oceniane w kolejności. Gdy warunek zostanie spełniony, odpowiedni wynik jest zwracany, a wszystkie kolejne warunki są pomijane.

Możesz dołączyć warunek ELSE na końcu, jeśli żadne warunki nie są spełnione. Bez ELSE zapytanie zwróci NULL, jeśli nie zostaną spełnione żadne warunki.

Oto przykład użycia CASE do zwrócenia ciągu na podstawie zapytania:

WYBIERZ

Imię,

nazwisko

Z

people_massachusetts

WALIZKA

WHEN hair_color = 'brown' THEN 'Ta osoba ma brązowe włosy.'

WHEN hair_color = 'blond' THEN 'Ta osoba ma blond włosy.'

WHEN hair_color = 'red' THEN 'Ta osoba ma rude włosy.'

ELSE „Nieznany kolor włosów”.

KONIEC

;

Podstawowe zapytania SQL, które marketerzy powinni wiedzieć

Gratulacje. jesteś gotowy do uruchamiania własnych zapytań SQL! Chociaż z SQL można zrobić o wiele więcej, mam nadzieję, że ten przegląd podstaw okazał się pomocny i pobrudził sobie ręce. Mając solidne podstawy, będziesz w stanie lepiej poruszać się po SQL i pracować nad niektórymi bardziej złożonymi przykładami.

Uwaga redakcji: Ten post został pierwotnie opublikowany 25 marca i został zaktualizowany pod kątem obszerności.

szablony marketingowe Excel