Bazując na bazie testowej Sakila (tutaj zip), wykonaj następujące ćwiczenia. Ułatwieniem może być widok schematu relacji tej bazy. Data ostatniej aktualizacji list: 07.10.2024.
Lista 1: zapytania na jednej tabeli
- Podaj tytuły, opisy, czas wypożyczenia, koszt wypożyczenia za dzień i całkowity koszt wypożyczenia (jako iloczyn czasu wypożyczenia i jego kosztu) dla każdego filmu. Przyjmij, że pole
rental_rate
zawiera koszt wypożyczenia za dzień (według dokumentacji bazy jest to koszt wypożyczenia na tyle dni, ile zapisano w polurental_duration
).- Wersja zgodna z dokumentacją. Podaj tytuły, opisy, czas wypożyczenia oraz koszt wypożyczenia za dzień (jako iloraz kosztu wypożyczenia na przewidzianą liczbę dni) dla każdego filmu.
- Podaj alfabetyczną listę nazwisk aktorów, każde nazwisko jeden raz.
- Wypisz wszystkie rodzaje ratingów filmów (każdy rating jednokrotnie).
- Wypisz tytuły, opisy, ratingi i długość filmów, które trwają 3 godziny lub dłużej.
- Zmodyfikuj powyższe zapytanie tak, aby czas był wyświetlany w godzinach (np. 75 minut = 1,25 godz.).
- Zmodyfikuj powyższe zapytanie tak, aby czas był wyświetlany w godzinach z dokładnością do drugiego miejsca po przecinku (np. 75 minut = 1,25 godz.).
- Zmodyfikuj powyższe zapytanie tak, aby kolumna z długością filmu w godzinach miała nazwę (alias) length_hours.
- Wypisz wszystkie informacje z tabeli
customer
o tych klientach, którzy są nieaktywni albo ich nazwisko kończy się naM
. - Wypisz wszystkie kategorie, których identyfikator jest większy niż 4, a których nazwa zaczyna się na
C
,S
lubT
. Użyj klauzuliWHERE
.- Wykonaj powyższe ćwiczenie, używając operatora
IN
do określenia zbioru literC
,S
,T
.
Uwaga. Trzeba użyć pewnej funkcji na tekstach.
- Wykonaj powyższe ćwiczenie, używając operatora
- Wypisz wszystkie filmy z ratingiem
G
,PG-13
lubNC-17
. Użyj operatoraIN
. - Wypisz listę otwartych wypożyczeń (czyli wypożyczono film, ale jeszcze go nie zwrócono).
- Wypisz wypożyczenia, które miały miejsce między 25 a 26 maja 2005 r. Skorzystaj z operatora
BETWEEN
. Zwróć uwagę, że w polurental_date
przechowywana jest zarówno data, jak i godzina (typ danych to DATETIME). - Wypisz listę dziesięciu ostatnio wypożyczonych filmów.