Zadanie 1
Utwórz zapytanie SQL, które zwróci wszystkie kolumny z tabeli Osoby, dla osób mających ponad 50 lat.Tabela osoby:
id
imię
wiek
Uporządkuj osoby wg wieku od najstarszych do najmłodszych.
Rozwiązanie:
select id, imie, wiek from osoby where wiek>50 order by wiek desc
Zadanie 2
W tym wyzwaniu musisz utworzyć wyciąg UNION, istnieją dwie tabele ussales i eusales, które firma macierzysta śledzi każdą sprzedaż w odpowiedniej lokalizacji w każdej tabeli, musisz wszystkie filtrować cenę sprzedaży, aby zwracała tylko wiersze ze sprzedażą większą niż 50,00 . Otrzymano zadanie połączenia tych danych do przyszłej analizy. Zamów w USA, a następnie w sprzedaży UE.(us/eu)sales table schema
id
name
price
card_name
card_number
transaction_date
resultant table schema
location (EU for eusales and US for ussales)
id
name
price (greater than 50.00)
card_name
card_number
transaction_date
select *, 'US' as location from ussales where price>50 union all select *, 'EU' from eusales where price>50
Zadanie 3
Uzyskaj listę użytkowników zawierającą nazwę i wiek użytkowników pełnoletnich, czyli mających 18 lub więcej lat
Tabela uzytkownicy
nazwa
wiek
Rozwiązanie;
select nazwa, wiek from uzytkownicy where wiek >=18
Zadanie 4
Uzyskaj listę podróżnych spoza USA, Meksyku i Kanady
Tabela podrozni
nazwa
kraj
select nazwa, kraj from podrozni where kraj not in ('USA','Meksyk','Kanada')
Zadanie 5
Uzyskaj listę studentów, którzy nie zapłacili czesnegoTabela studenci
id
imie
nazwisko
semestr
czesne_wplacone
select *
from studenci
where czesne_wplacone=false
Zadanie 6
Uzyskaj listę 5 najlepiej sprzedających się ksiażekTabela ksiazki
tytul
autor
ilosc_sprzedanych
select *
from books
order by copies_sold desc
limit 5
Zadanie 7
Wyświetl listę klanów wraz z sumą punktów uzyskanych przez ich członków, uporządkowaną wg łącznej sumy punktówTabela osoby:
id
nazwa
klan
punkty
Powinieneś otrzymać listę zawierającą;
pozycja
klan
suma_punktow
liczba_osob
Zapytanie powinno uporządkować unikalne klany wg sumy_punktów. Jeśli nie ma nazwy klanu powinno zwrócić 'bez klanu'. Powinno zsumować dla każdego klanu suma_punktów oraz liczba_osobRozwiązanie:
SELECT RANK() OVER (ORDER BY SUM(punkty) DESC), COALESCE(NULLIF(klan,''), '[bez klanu]') AS klan, SUM(punkty) AS suma_punktow, COUNT(*) AS liczba_osob FROM osoby GROUP BY klan ORDER BY suma_punktow DESC
Zadanie 8
W tabeli produkty zamieszczono cenę i wagę produktu w gramach. Twoim zadaniem jest utworzenie cennika zawierającego dodatkowo koszt w przeliczeniu na kg, tak aby klienci mieli możliwość łatwo porównać faktyczną cenę produktów.Tabela produkty:
id
nazwa
cena
dostawca
waga
producent
kraj
Powinieneś otrzymać listę zawierającą;
nazwa
waga
cena
cena_za_kg
Uporządkuj listę rosnąco wg cena_za_kg, i następnie rosnąco wg nazwyRozwiązanie:
SELECT nazwa, waga, cena, ROUND((cena * 1000 / waga )::numeric, 2)::float AS cena_za_kg FROM produkty ORDER BY cena_za_kg, nazwa
----------------------------------------
Zdjęcie: Pexels z Pixabay
Brak komentarzy:
Prześlij komentarz