Klasówka z SQLa 2018/2019 (wersja B)

Tabele i dane

kontrakty.sql

W tabeli produkuje są dane o ilościach towarów produkowanych przez różne kraje, natomiast w tabeli sprzedaje dane o ilościach towarów sprzedawanych jednym krajom przez inne kraje. Jeśli dla jakiegoś kraju i produktu brak odpowiedniego wiersza w tabeli produkuje, to przyjmujemy, że produjca wynosi 0. Podobnie w przypadku przepływu towarów.

Zadania

  1. Ile krajów kupuje towar, który produkuje.
  2. Wypisz wszystkie pary krajów, między którymi zachodzi przepływ jakiegoś towaru w obie strony. Nie wypisuj dwukrotnie tej samej pary w dwóch różnych kolejnosciach.
  3. Wypisz producentów niezerowej ilości węgla w kolejności malejącego łącznego eksportu węgla.
  4. Wypisz wszystkie kraje, które sprzedają jakiegoś towaru więcej niż go produkują.
  5. Dla każdego towaru wypisz jego największych importerów. W przypadku remisów wypisz wszystkich.
  6. Dla każdego eksportera A i eksportowanego przez niego towaru T wypisz kraj B, który jest następny na liście głównych eksporterów towaru T. Jeśli takiego nie ma, wypisz null (puste pole). Jeśli jest kilku ex-aequo, wypisz wszystkich.
  7. Posortuj kraje malejąco wg. konsumpcji węgla, przy czym za konsumpcję danego towaru w danym kraju uznajemy sumę produkcji i importu pomniejszoną o eksport.

Zasady

Przykładowe rozwiązania

klasowka1-2018B-rozw.sql

Filip Murlak 04-12-2019