Strefa SQL:
Ostatnio dodane
T-SQL SQL Server funkcja CHARINDEX
T-SQL SQL Server funkcja PATINDEX
Kurs SQL
Wstęp
Szczypta teorii
SQL Server 2008 R2 (skąd pobrać).
SQL Server 2008 R2 Express (instalacja).
Baza danych BANK_v2 (struktura, instalacja)
Jak utworzyć bazę BANK_v2 na SQL Server 2008 R2 Express?
Przygotowanie do tworzenia zapytań.
Zadanie 1. Wyświetl dane wszystkich pracowników w banku (nauka: SELECT, FROM)
Zadanie 2. Wyświetl informacje o wszystkich stanowiskach w banku (nauka: SELECT, FROM)
Zadanie 3. Wyświetl informacje o wszystkich działach w banku (nauka: SELECT, FROM)
Zadanie 4. Wyświetl imiona, nazwiska i pensję wszystkich pracowników (nauka: SELECT FROM)
Zadanie 5. Wyświetl imiona, nazwiska i całkowite wynagrodzenie wszystkich pracowników (nauka: operacje arytmetyczne na danych).
Zadanie 6. Korzystanie z aliasów (nauka: ALIASY).
Zadanie 7. Dodawanie komentarzy (nauka: KOMENTARZE).
Zadanie 8. Pokaż dniówkę, tygodniówkę, pensję miesięczną i roczną wszystkich pracowników (nauka: ROUND, CAST, ORDER BY).
Zadanie 9. Pokaż wszystkich pracowników, których nazwiska zaczynają się na M. Wyświetl tylko Imię i Nazwisko pracownika (nauka: WHERE, LIKE).
Zadanie 10. Pokaż wszystkich pracowników, którzy pracują w dziale logistyki lub informatyki. W wyniku wyświetl tylko imię i nazwisko pracownika (nauka: WHERE, IN, OR).
Zadanie 11. Pokaż wszystkich pracowników których bezpośrednim przełożonym jest Leopold Banko. WHERE JOIN IS NULL
Zadanie 12. Pokaż wszystkich pracowników którzy już nie pracują w banku.
Zadanie 13. Pokaż wszystkich pracowników którzy już nie pracują w banku i oblicz ile lat pracowali w banku oraz ile miesięcy minęło od zakończenia stosunku pracy.
Kurs SQL
Baza NORTHWIND – ćwiczenia
|
1.
|
Wyświetl wszystkich pracowników.
|
|
2.
|
Wyświetl wszystkich klientów.
|
|
3.
|
Wyświetl wszystkich dostawców.
|
|
4.
|
Wyświetl wszystkich dostawców. Ogranicz liczbę kolumn w wyniku, do wskazanych.
|
|
5.
|
Wyświetl wszystkich pracowników. Ogranicz liczbę kolumn w wyniku, do wskazanych.
|
|
6.
|
Wyświetl wszystkich dostawców. Ogranicz liczbę kolumn w wyniku, do wskazanych. Kolumnom nadaj odpowiednie aliasy.
|
|
7.
|
Wyświetl wszystkie produkty. Ogranicz liczbę kolumn w wyniku, do wskazanych. Kolumnom nadaj odpowiednie aliasy.
|
|
8.
|
Wyświetl wszystkich spedytorów. Ogranicz liczbę kolumn w wyniku, do wskazanych. Kolumnom nadaj odpowiednie aliasy. Tabeli spedytorzy nadaj alias 'S'
|
|
9.
|
Obliczenie różnicy między zamówieniami o największej i najmniejszej wartości.
|
|
10.
|
Oblicz łączną ilość zamówień 2 klientów z największą ilością zamówień.
|
|
11.
|
Wyświetl wszystkich pracowników w formacie: Nazwisko, Imię, Stanowisko.
|
|
12.
|
Wyświetl wszystkich pracowników w formacie: Nazwisko, Imię, Stanowisko, Kraj i nazwij tak nagłówki kolumn, ale tylko tych ze Stanów Zjednoczonych.
|
|
13.
|
Znajdź dane firmy o nazwie „Alfreds Futterkiste"
|
|
14.
|
Znajdź dostawców czekolady.
|
|
15.
|
Raport sprzedaży za 1996 rok.
|
|
16.
|
Wyświetl liczbę pracowników.
|
|
17.
|
Wyświetl aktualną listę produktów.
|
|
18.
|
Pokaż wszystkich pracowników których nazwiska zaczynają się na literę D.
|
|
19.
|
Pokaż produkty których cena jednostkowa jest większa niż 100.
|
|
20.
|
Pokaż produkty których cena jednostkowa jest większa od 50 ale mniejsza niż 100.
|
|
21.
|
Wyświetl zamówienia których wartość jest większa niż 100 dol.
|
|
22.
|
Oblicz jaki procent wszystkich zamówień stanowią zamówienia przedświąteczne?.
|
|
23.
|
Który spedytor obsłużył najwięcej zamówień.
|
|
24.
|
Który spedytor obsłużył zamówienia na największą wartość.
|
|
25.
|
Oblicz sumę zamówień o największej i najmniejszej wartości.
|
|
30.
|
Oblicz wartośc każdego zamówienia (w zapytaniu: GROUP BY, SUM(), ORDER BY, INNER JOIN, Alias).
|
|
31.
|
Oblicz wartość wszystkich zamówień w I kw. 1997r. (zapytaniu: SUM(), Alias, INNER JOIN, BETWEEN).
|
|
32.
|
Oblicz ilość klientów którzy nie złożyli żadnego zamówienia. (w zapytaniu: COUNT(), Alias, LEFT JOIN, IS NULL).
|
|
33.
|
Oblicz ilość klientów z min. 1 zamówieniem i bez zamówień. (w zapytaniu: COUNT(), Alias, LEFT JOIN, IS NULL).
|
|
34
|
Wyświetl informacje o pierwszym i ostatnim zamówieniu.
|
|
35
|
Wyświetl klientów którzy złożyli największą liczbę zamówień.
|
Northwind – ćwiczenia
Baza ADVENTUREWORKS – ćwiczenia
|
|
Adventureworks skąd pobrać?
|
|
|
Adventureworks jak zainstalować?
|
|
1.
|
Pokaż 10-ciu pierwszych pracowników którzy mają na nazwisko „Anderson”.
|
|
2.
|
Pokaż wszystkich pracowników.
|
|
3.
|
Wyświetl listę stanowisk w firmie.
|
|
4.
|
Wyświetl wszystkich pracowników płci żeńskiej.
|
|
5.
|
Pokaż wszystkie produkty.
|
|
6.
|
Pokaż listę sklepów.
|
|
7.
|
Pokaż pracowników którzy mają ponad 50 lat.
|
|
8.
|
Wyświetl ID oraz ilość pozycji zamówienia o największej ilości pozycji.
|
|
9.
|
Wyświetl informacje o zamówieniu (ID zamówienia , wartość zamówienia) o największej wartości.
|
|
10.
|
Pokaż ostatnie zamówienie dla każdego klienta.
|
|
11.
|
Pokaż ile zamówień złożył każdy z klientów.
|
|
12.
|
Który sprzedawca obsłużył największą ilość zamówień. Pokaż 10-ciu. Wyniki posortuj malejąco.
|
|
13.
|
Wyświetl sprzedawcę, który obsłużył zamówienia o największej wartości.
|
|
14.
|
Oblicz średnią wartość zamówień.
|
|
15.
|
Obliczy czy wartość zamówienia jest mniejsza czy większa niż średnia wartość zamówień.
|
|
16.
|
Obliczy wartość wszystkich zamówień z października 2005 r.
|
|
17.
|
Wyświetl służbowe numery telefonów pracowników.
|
|
18.
|
Wyświetl zamówienia które mają tylko jedną pozycję.
|
|
19.
|
Wyświetl 5 zamówień które mają najwięcej pozycji. Wyniki posortuj malejąco wg ilości pozycji.
|
|
20.
|
Policz ilu pracowników pracuje w każdym dziale. Wyniki posortuj malejąco wg ilości pracowników.
|
|
21.
|
Która kategoria zawiera najwięcej produktów. Wyniki posortuj wg ilości produtków w kategorii malejąco.
|
|
22.
|
Wyświetl informacje o zamówieniach z grudnia 2005 r. Użyj funkcji OVER(Partition by).
|
|
23.
|
Policz produkty wg modeli. Wyniki posortuj malejąco wg liczby produktów danego modelu.
|
|
25
|
Oblicz sumę zamówien o największej i najmniejszej wartości.
|
|
26.
|
Oblicz średnią wartość zamówień. (w zapytaniu: GROUP BY, SUM(), AVG()).
|
|
27.
|
Oblicz czy wartość zamówienia jest mniejsza czy większa/równa średniej wartości zamówień. (w zapytaniu: GROUP BY, SUM(), AVG(), CASE).
|
|
27a.
|
Oblicz czy wartość zamówienia jest mniejsza czy większa/równa średniej wartości zamówień. Wykorzystaj deklaracje zmiennej. (w zapytaniu: DECLARE, SET, GROUP BY, SUM(), AVG(), CASE).
|
|
30.
|
Oblicz wartość każdego zamówienia. (w zapytaniu: GROUP BY, JOIN, SUM()).
|
|
31
|
Która kategoria ma najwięcej produktów.
|
|
32
|
Znajdź pierwsze i ostatnie zamówienie.
|
|
33
|
Zaprezentuj zestawienie sprzedaży w latach (wg liczby zamówień)
|
|
34
|
Oblicz sumę wartości pierwszego i ostatniego zamówienia.
|
|
35
|
Wyświetl klientów którzy złożyli największą liczbę zamówień.
|
|
36
|
Jak prezentowała się liczba zamówień w poszczególnych latach dla sklepu "Twin Cycles"
|
|
37
|
Oblicz i wyświetl wartość pierwszego i ostatniego zamówienia.
|
|
38
|
Zaprezentuj zestawienie sprzedaży w latach (liczba zamówień, wartość zamówień).
|
|
39
|
Pracownicy pogrupowani wg dat zatrudnienia.
|
|
40
|
Wyświetl zamówienia (najmniejsza i największa wartość) [Tabela tymczasowa]
|
Adventureworks – ćwiczenia
Optymalizacja zapytań SQL, dobre praktyki
T-SQL
Przykładowa baza danych – Hotele (ang.Hotels)
Przykładowa baza danych – Biblioteka / Training databases Library
Przydatne linki