1 / 17

BAZY DANYCH

BAZY DANYCH. Język SQL – polecenie Select. Mariusz Zając IV FK. BAZA ADRESÓW PRACOWNIKÓW. SQL – polecenie SELECT.

lorin
Download Presentation

BAZY DANYCH

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. BAZY DANYCH Język SQL – polecenie Select Mariusz Zając IV FK

  2. BAZA ADRESÓW PRACOWNIKÓW SQL – polecenie SELECT

  3. Teraz powiedzmy, że chcesz obejrzeć adres każdego pracownika. Użyj polecenia SELECT w następujący sposób: SELECT Imie, Nazwisko, Adres, Miasto, Stan FROM TabelaAdresowPracownikow; SQL – polecenie SELECT

  4. Ogólna forma polecenia SELECT, odczytująca wszystkie wiersze w tabeli to: SELECT NazwaKolumny, NazwaKolumny, ... FROM NazwaTabeli;Aby odczytać wszystkie kolumny z tabeli bez wpisywania ich nazw, wykorzystaj: SELECT * FROM NazwaTabeli; SQL – polecenie SELECT

  5. TABLICA STATYSTYK PRACOWNIKÓW SQL – polecenie SELECT

  6. = równy <> / != nierówny < mniejszy < większy <= mniejszy lub równy >= większy lub równy Operatory relacyjne SQL – polecenie SELECT

  7. Gdybyś chciał zobaczyć NumerIDPracownika osób zarabiających ponad 50000$, użyj tego: SELECT NumerIDPracownika FROM TablicaStatystykPracownikow WHERE Pensja >= 50000; Klauzula WHERE SQL – polecenie SELECT Gdybyś chciał zobaczyć NumerIDPracownika wszystkich Kierowników, użyj tego: SELECT NumerIDPracownika FROM TablicaStatystykPracownikow WHERE Stanowisko = 'Kierownik';

  8. SELECT NumerIDPracownika FROM TablicaStatystykPraconikow WHERE Pensja > 40000 AND Stanowisko = 'Personel'; SELECT NumerIDPracownika FROM TablicaStatystykPracownikow WHERE Pensja < 40000 OR Zyski < 10000; SELECT NumerIDPracownika FROM TablicaStatystykPracownikow WHERE Stanowisko = 'Kierownik' AND Pensja > 60000 OR Zyski > 12000; Klauzula WHERE SQL – polecenie SELECT

  9. Gdy chcesz otrzymać listę kierowników i personelu: SELECT NumerIDPracownika FROM TablicaStatystykPracownikow WHERE Stanowisko IN ('Kierownik', 'Personel'); albo wylistować tych zarabiających więcej lub dokładnie 30000$, ale maksymalnie 50000$, użyj: SELECT NumerIDPracownika FROM TablicaStatystykPracownikow WHERE Pensja BETWEEN 30000 AND 50000; INoraz BETWEEN SQL – polecenie SELECT

  10. Spójrz na tabelę TabelaAdresowPracownikow i powiedzmy, że chciałbyś zobaczyć wszystkie osoby, których nazwiska zaczynają się na "L"; spróbuj: SELECT NumerIDPracownika FROM TabelaAdresowPracownikow WHERE Nazwisko LIKE 'L%'; ‘%L’ nazwiska kończące się na ‘L’ ‘%L%’ nazwisk, które zawierają ‘L’ LIKE SQL – polecenie SELECT

  11. SQL – polecenie SELECT ZAMÓWIENIA ANTYKI POSIADACZE ANTYKÓW

  12. Powiedzmy, że chcesz wylistować ID i imiona tylko tych osób, które sprzedały antyk. Oczywiści chcesz mieć listę, w której każda osoba jest przedstawiona tylko raz -- nie interesuje cię ile antyków dana osoba sprzedała, tylko sam fakt sprzedania: SELECT DISTINCT IDSprzedajacego, NazwiskoPosiadacza, ImiePosiadacza FROM Antyki, PosiadaczeAntykow WHERE IDSprzedajacego = IDPosiadacza ORDER BY NazwiskoPosiadacza, ImiePosiadacza, IDPosiadacza; Klauzula ORDER BY sortuje nam listę według nazwiska, następnie imienia,a na koniec według ID Posiadacza. DISTINCT oraz ORDER BY SQL – polecenie SELECT

  13. Chcemy zobaczyć najdroższą Rzecz kupioną przez każdego z posiadaczy. Musimy powiedzieć SQL-owi, by zgrupował nabytki każdego posiadacza i pokazał nam największą cenę: SELECT IDPosiadacza, MAX(Cena) FROM Antyki GROUP BY IDKupujacego; A teraz załóżmy, że chcemy zobaczyć tylko największe ceny nabytków jeśli cena przekraca $1000, więc użyjemy klauzuli HAVING: SELECT IDKupujacego, MAX(Cena) FROM Antyki GROUP BY IDKupujacego HAVING Cena > 1000; GROUP BYoraz HAVING SQL – polecenie SELECT

  14. Spójrzmy na poniższe zaptanie, które drukuje nazwiska tych posiadaczy, którzy wystosowali jakieś zamówienie, wraz z tym zamówieniem, ale tylko dla tych zamówień, które moga być dokonane (tzn. gdy istnieje kupiec, który posiada zamawianą rzecz): SELECT Posiad.NazwiskoPosiadacza Nazwisko, Zam.ZadanyPrzemiot Zamawiany przedmiot FROM Zamowienia Zam, PosiadaczeAntykow Posiad WHERE Zam.IDPosiadacza = Posiad.IDPosiadacza AND Zam.ZadanyPrzedmiot IN (SELECT Rzecz FROM Antyki); ALIASY SQL – polecenie SELECT

  15. ALIASY SQL – polecenie SELECT To nam daje:

  16. Funkcje agregacyjne SQL – polecenie SELECT • SUM () zwraca sumę wartości z wierszy spełniających zapytanie dla kolumny numerycznej. • AVG () zwraca średnią dla danej kolumny. • MAX () zwraca największą wartość w danej kolumnie. • MIN () zwraca najmniejszą wartość w danej kolumnie. • COUNT(*) zwraca liczbę określającą ilość wierszy spełniających warunki.

  17. SQL – polecenie SELECT Funkcje agregacyjne Mając w pamięci tabele z początku tego dokumentu, spójrzmy na trzy przykłady: SELECT SUM(Pensja), AVG(Pensja) FROM TablicaStatystykPracownikow; To zapytanie pokazuje sumę wszystkich pensji w tabeli i średnią pensję wyliczoną ze wszystkich wpisów w tabeli. SELECT MIN(Zyski) FROM TablicaStatystykPracownikow WHERE Stanowisko = 'Kierownik'; To zapytanie pokazuje najmniejszą wartość kolumny "Zyski" wśród pracowników, którzy są kierownikami. Wartość ta to 12500. SELECT COUNT(*) FROM TablicaStatystykPracownikow WHERE Stanowisko = 'Personel'; To zapytanie pokazuje, ilu pracownikow ma status personelu (3).

More Related