Bazy danych. Lista 2.
Transkrypt
Bazy danych. Lista 2.
Bazy danych. Lista 2. Zadania wykorzystują baza danych smakoszy składających się z relacji : lokal(nazwa, miasto, adres) osoba(osoba : int, nazwisko, plec : numeric(1,0), adres), zjadl(osoba, lokal, danie, data : date), rachunek(lokal, data, numer, osoba, kwota); -- dla uproszczenia zakładamy, ze dana osoba bierze rachunek co najwyżej raz dziennie w tym samym lokalu; podaje(lokal, danie, data, cena : numeric(6,2)), -- cena może zmieniać się w kolejnych dniach! lubi(osoba, danie), wegetariańskie(danie) -- czy danie jest wegetariańskie danie(lokal, danie, waga :int, kalorie: int) -- informacja o daniu, waga w gramach skladnik(danie, skladnik, ilosc, rodzaj) -- informacja o składnikach, rodzaj = "mięso", "ryba", "owoce","nabiał",...itp. Rozwiąż w SQL i algebrze relacji (1 pkt.): 1. Wypisz adres lokalu, który podaje danie o nazwie „spagetti”. 2. Wypisz osoby, które lubią jakieś danie wegetariańskie podawane we wrocławskich lokalach. 3. Wypisz dania wegetariańskie, które maja co najmniej jeden składnik mięsny. 4. Wszystkie dania zawierające szpinak w ilości > 100g i nie zawierające cukru w ilości większej niż 5g. 5. Wypisz danie o największej ilości kalorii. 6. Podaj ile kobiet i ile mężczyzn z Warszawy lubi dania podawane w warszawskich lokalach. 7. Dla każdego lokalu wyświetl dania, które mają maksymalną ilość składników, które były podawane w ostatnim miesiącu. 8. Podaj danie o najmniejszej ilości kalorii spośród wszystkich podawanych w ostatnich dwóch latach. 9. Podaj lokal, który podał największą ilość dań o cenach większych niż 20 zł. 10. Wypisz sumę kwot rachunków, które zapłaciły poszczególne osoby w 2014 roku w lokalach wrocławskich. Uwzględnij tylko takie osoby, które zapłaciły więcej niż 500zl. 11. Wypisz dania wegetariańskie, które maja dokładnie dwa składniki rodzaju owoce (użyj grupowania). 12. Zrób zadanie 11 bez grupowania.