Kolokwium z baz danych: Piłkarze i drużyny

Autor: Oskar Skibski

Struktura bazy danych (PostgreSQL): pilkarze.create, pilkarze.drop.

Przykładowe dane: pilkarze.insert.

Przykładowe rozwiązanie (PostgreSQL): pilkarze.sol (Martyna Maciejewska).

Zadanie

Baza zawiera dane o piłkarzach, drużynach i ich składach.

Napisz nastepujace zapytania SQL:

  1. Wypisać nazwiska graczy Legii Warszawa.
  2. Wypisać imiona i nazwiska wszystkich piłkarzy; jeżeli piłkarz gra w którejś drużynie podać przy nim skrót i nazwę tej drużyny.
  3. Wypisać tabelę z jedną kolumną 'nieprzydzieleni' w której znajdą się nazwy wszystkich drużyn bez zawodników i imiona zawodników bez drużyn.
  4. Wypisać wszystkie drużyny (skrót i nazwa), których rozpiętość cen zawodników jest mniejsza niż 1000; pominąć drużyny bez zawodników i zawodników bez ceny.
  5. Wypisać wszystkich piłkarzy z drużyny, w której występuje zawodnik z najniższym numerem; można założyć że jest jeden.
  6. Ile maksymalnie piłkarzy z jednej formacji występuje w jednej drużynie? Wypisać wszystkie pary (skrót_drużyny, formacja) osiągające tę liczbę.
  7. Wypisać najdroższych piłkarzy.
  8. Dla każdego wycenionego zatrudnionego piłkarza wypisać jego imię, nazwisko, skrót drużyny oraz jego ranking w drużynie pod względem ceny (najdroższy piłkarz w drużynie ma numer 1, drugi co do ceny 2 itd). Posortować po skrótach drużyn.
  9. Wypisać wszystkich piłkarzy, obok każdego podać jego numer oraz (jeżeli istnieje) numer kolejnej osoby w drużynie; dla osób bez numerów wypisać dwa NULLe.
  10. Wypisać wszystkie drużyny mające piłkarzy na wszystkich pozycjach istniejących w bazie danych.