Kod SQL z wszystkich ćwiczeń.doc

(42 KB) Pobierz
5 najdroższych samochodów

5 najdroższych samochodów

SELECT TOP 5 [nazwa samochodu], model, [numer rejestracyjny], cena

FROM samochody

ORDER BY cena DESC;

5 najtańszych samochodów

SELECT TOP 5 [nazwa samochodu], model, [numer rejestracyjny], cena

FROM samochody

ORDER BY cena;

Cena większa od 35 tyś.

SELECT model, [nazwa samochodu], [numer rejestracyjny], cena, data

FROM samochody

WHERE cena>35000;

Data przyjęcia 2002-07-15

SELECT model, [nazwa samochodu], [numer rejestracyjny], cena, data

FROM samochody

WHERE data=#2002-07-15#;

Ilość klientów w miastach

SELECT miasto, count(nazwisko) AS [ilość klientów]

FROM klienci

GROUP BY miasto;

Ilość kobiet i mężczyzn w miastach

SELECT miasto, [płeć], count(nazwisko) AS [ilość właścicieli]

FROM właściciel

GROUP BY miasto, płeć

ORDER BY miasto, płeć;

Ilość malejąco, alfabetycznie w miastach

SELECT miasto, count(nazwisko) AS [ilość klientów]

FROM klienci

GROUP BY miasto

ORDER BY count(nazwisko) DESC , miasto;

Ilość malejąco klientów w miastach

SELECT miasto, count(nazwisko) AS [ilość klientów]

FROM klienci

GROUP BY miasto

ORDER BY count(nazwisko) DESC;

Miasta klientów malejąco

SELECT DISTINCT miasto AS miejscowości

FROM klienci

ORDER BY miasto DESC;

Miejscowości klientów

SELECT DISTINCT miasto AS miejscowości

FROM klienci;

Szukamy osoby Łopata Krzysztof

SELECT [ID właściciela], imie, nazwisko, kod

FROM właściciel

WHERE nazwisko="łopata" and imie="krzysztof";

Pierwsze litery nazwiska

SELECT [ID właściciela], imie, nazwisko, kod

FROM właściciel

WHERE nazwisko like [Podaj pierwsze (pierwszą) literę nazwiska] & "*";

 

Podaj nazwisko i imię

SELECT [ID właściciela], imie, nazwisko, kod

FROM właściciel

WHERE nazwisko=[Podaj nazwisko:] and imie=[Podaj imię];

Posortowany wiek samochodów

SELECT model, [nazwa samochodu], cena, year(date())-[rok produkcji] AS [wiek samochodu]

FROM samochody

ORDER BY (year(date())-[rok produkcji]);

Posortowany malejąco wiek samochodów

SELECT model, [nazwa samochodu], cena, year(date())-[rok produkcji] AS [wiek samochodu]

FROM samochody

ORDER BY (year(date())-[rok produkcji]) DESC;

Pyta o płeć

SELECT miasto, [płeć], count(nazwisko) AS [ilość właścicieli]

FROM właściciel

GROUP BY miasto, płeć

HAVING płeć=[(k)obieta czy (m)ężczyzna]

ORDER BY miasto;

Samochody zaczynające się od s

SELECT *

FROM samochody

WHERE left([nazwa samochodu],1)="s";

Wiek samochodu

SELECT model, [nazwa samochodu], cena, year(date())-[rok produkcji] AS [wiek samochodu]

FROM samochody;

Liczba właścicieli w miastach

SELECT miasto, count(miasto) AS [Liczba właścicieli]

FROM właściciel

GROUP BY miasto;

Ilość kobiet i mężczyzn w miastach

SELECT miasto, płeć, count(miasto) AS [Liczba właścicieli]

FROM właściciel

GROUP BY miasto, płeć;

Ilość osób w mieście od najmniejszej liczby do największej

SELECT miasto, płeć, count(*) AS [Liczba właścicieli]

FROM właściciel

GROUP BY miasto, płeć

order by count(miasto)

Ilość osób w mieście od najwiękzsej liczby do najmniejszej

SELECT miasto, płeć, count(*) AS [Liczba właścicieli]

FROM właściciel

GROUP BY miasto, płeć

order by count(miasto) desc

Sortowanie miastami w liście od największej liczby osób do najmniejszej

SELECT miasto, płeć, count(*) AS [Liczba właścicieli]

FROM właściciel

GROUP BY miasto, płeć

order by count(*), miasto desc

Liczba samochodów

SELECT count(*) as [liczba samochodów]

from Samochody

Średnia cena samochodów

SELECT Count(*) AS [liczba samochodów],

Avg(cena) AS [Średnia cena samochodów]

FROM Samochody;

Najdroższy samochód

SELECT Count(*) AS [liczba samochodów],

Avg(cena) AS [Średnia cena samochodów],

max (cena) as [najdroższy samochód]

FROM Samochody;

Najtańszy samochód

SELECT Count(*) AS [liczba samochodów],

Avg(cena) AS [Średnia cena samochodów],

min (cena) as [najtańszy samochód]

FROM Samochody;

Osoby i ich samochody mają samochody

SELECT nazwisko, imie, [nr telefonu], [nazwa samochodu], model

from właściciel

inner join samochody on samochody.[ID właściciela]=właściciel.[ID właściciela]

Ile kto ma samochodów (tylko te osoby, które posiadają te samochody)

SELECT nazwisko, count(samochody.[ID właściciela]) as [ilość samochodów]

from właściciel

inner join samochody on samochody.[ID właściciela]=właściciel.[ID właściciela]

group by nazwisko

Wszystkie osoby i ich samochody, lub brak samochodów

SELECT nazwisko, count(samochody.[ID właściciela]) AS [ilość samochodów]

FROM właściciel

left JOIN samochody ON samochody.[ID właściciela]=właściciel.[ID właściciela]

GROUP BY nazwisko;

SELECT nazwisko, count(samochody.[ID właściciela]) AS [ilość samochodów]

FROM właściciel

left JOIN samochody ON samochody.[ID właściciela]=właściciel.[ID właściciela]

GROUP BY nazwisko;

Wszyscy właściciele i ich samochody (nazwa i model)

SELECT nazwisko, imie, [nr telefonu], [nazwa samochodu], model

FROM właściciel

left JOIN samochody ON samochody.[ID właściciela]=właściciel.[ID właściciela]

SELECT nazwisko, imie, [nr telefonu], [nazwa samochodu], model

FROM samochody

right JOIN właściciel ON samochody.[ID właściciela]=właściciel.[ID właściciela]

Osoba i data przyjęcia samochodu do komisu

SELECT nazwisko, [nazwa samochodu], model, data

FROM właściciel

right JOIN samochody ON samochody.[ID właściciela]=właściciel.[ID właściciela]

Łączenie trzech tabel - komis

SELECT właściciel.Nazwisko, samochody.[Nazwa samochodu], samochody.Model, [Symbol napędu], szczegóły.[Rodzaj nadwozia], właściciel.[ID właściciela]

FROM właściciel INNER JOIN (szczegóły INNER JOIN samochody ON szczegóły.[Numer rejestracyjny] = samochody.[Numer rejestracyjny]) ON właściciel.[ID właściciela] = samochody.[ID właściciela]

WHERE nazwisko like [Podaj 1 litere] & "*";

Długość zwolnień - Przychodnia

SELECT nazwisko,

sum([dni zwolnienia]) as [Długość zwolnień]

from pacjenci inner join wizyty on wizyty.[nr ubezpieczenia]=pacjenci.[nr ubezpieczenia]

group by nazwisko

Wszyscy pacjenci i dni zwolnienia – Przychodnia

SELECT nazwisko, sum([dni zwolnienia]) AS [Długość zwolnień]

FROM pacjenci left JOIN wizyty ON wizyty.[nr ubezpieczenia]=pacjenci.[nr ubezpieczenia]

GROUP BY nazwisko;

Wszyscy pacjenci i dni zwolnienia (łącznie z zerami) - Przychodnia

SELECT nazwisko, format (sum([dni zwolnienia]), "0;0;0;0") AS [Długość zwolnień]

FROM pacjenci left JOIN wizyty ON wizyty.[nr ubezpieczenia]=pacjenci.[nr ubezpieczenia]

GROUP BY nazwisko;

Liczba klientów w miastach – Komis

SELECT miasto, count(nazwisko) as [Liczba Klientów]

from klienci

group by miasto

Liczba klientów w % w miastach – Komis

SELECT miasto, format(count(nazwisko)/(select count(nazwisko) from właściciel), "0%") as [Procent Klientów]

from klienci

group by miasto

% kobiet w miastach - Komis

SELECT miasto, format(count(nazwisko)/(select count(nazwisko) from właściciel), "0%") as [Procent Właścicieli]

from właściciel

where płeć="k"

group by miasto

% kobiet w każdym z miast – Komis – „będzie na trzecim terminie”

SELECT miasto, format(count(nazwisko)/(select count(nazwisko) from właściciel where właściciel_1.miasto=właściciel.miasto), "0%") as [Procent Właścicieli]

from właściciel as właściciel_1

where płeć="k"

group by miasto

Ile lat mają właściciele - Komis

SELECT nazwisko, year(date())-year([data urodzenia]) as wiek

from właściciel

Osoby, które średnią wieku przekraczają - Komis

SELECT nazwisko, year(date())-year([data urodzenia]) as wiek

from właściciel

where year(date())-year([data urodzenia])>(select avg(year(date())-year([data urodzenia])) from właściciel)

Osoby, które nie mają samochodów w Komisie - 1 sposób

SELECT nazwisko, imie

from właściciel

where [ID właściciela] not in (select [ID właściciela] from samochody)

 

Osoby, które nie mają samochodów w Komisie – 2 sposób – tego nie będzie na kolokwium

SELECT nazwisko, imie

from właściciel

left join samochody on samochody.[ID właściciela]=właściciel.[ID właściciela]

where (samochody.[ID właściciela] is null)

 

 

 

...
Zgłoś jeśli naruszono regulamin