Od zera do SQL codera – język zapytań SQL w praktyce 2400-ZEWW877
1.WSTĘP
1.1 Do kogo skierowany jest kurs SQL
1.2 Kilka słów o języku SQL
2.PRZYGOTOWANIE ŚRODOWISKA DO PRACY
2.1 Podłączenie bazy danych otomoto_db do pracy
2.2 Praca z DBeaver’em oraz zapoznanie z bazą danych otomoto_db
2.3 Odczytywanie własności poszczególnych tabel
3.SKŁADNIA SQL
3.1 Wybieranie danych - klauzula SELECT FROM
- Wypisywanie unikatowych wartości
- Ograniczanie ilości wierszy
- SELECT bez klauzuli FROM
3.2 Filtrowanie danych - klauzula WHERE
- Operatory logiczne AND oraz OR
- Inne operatory porównania
- Operator IN
- Operator NOT
- Operator LIKE
- Inne znaki wieloznaczne
- Określenie NULL
3.3 Grupowanie danych - klauzula GROUP BY
- Agregowanie wartości
- Grupowanie danych
- Grupowanie tekstu
3.4 Filtrowanie grup - klauzula HAVING
3.5 Sortowanie danych – klauzula ORDER BY
4.FUNKCJE SKALARNE W SQL
4.1 Funkcje tekstowe
4.2 Funkcje daty
4.3 Funkcje matematyczne
4.4 Funkcje konwertujące
- Typy danych
- Funkcje konwertujące i funkcja COALESCE
5.INSTRUKCJE WARUNKOWE
5.1 Instrukcja IIF
5.2 Instrukcja SELECT … CASE
6.PODZAPYTANIA
6.1 Podzapytania wewnątrz klauzuli FROM
6.2 Podzapytania skorelowane
6.3 CTE – Common Table Expressions
7.ŁĄCZENIE TABEL
7.1 LEFT OUTER JOIN
7.2 INNER JOIN
7.3 FULL OUTER JOIN
7.4 UNION oraz UNION ALL
7.5 Złączenia wielu tabel
7.6 Alternatywa dla FULL JOIN w SQLite
8.FUNKCJE OKIENKOWE
8.1 Składnia i rodzaje funkcji okienkowych
8.2 Parametr PARTITION BY i ORDER BY
8.3 Różnica między ROW_NUMBER a RANK
8.4 Parametr NULLS
8.5 Funkcje LEAD oraz LAG
8.6 Funkcje FIRST_VALUE oraz LAST_VALUE
8.7 Funkcje agregujące
8.8 Parametr BETWEEN … AND
9.ZAPYTANIA REKURENCYJNE
9.1 Rekurencja w teorii i w praktyce
10.TWORZENIE I MODYFIKACJA BAZ DANYCH I ICH ZAWARTOŚCI
10.1 Utworzenie nowej bazy danych w SQLite
10.2 Operacje na tabelach
- Tworzenie tabel
- Modyfikowanie tabel
- Usuwanie tabel
10.3 Operacje na rekordach w tabeli
- Wstawianie rekordów do tabeli
- Modyfikacja rekordów w tabeli
- Usuwanie rekordów z tabeli
10.4 Ograniczenia (CONSTRAINTS)
10.5 Klucz obcy i klucz główny
11. WIDOKI W SQL
12. INDEKSOWANIE BAZ DANYCH
13. FUNKCJE NIEDOSTĘPNE W SQLITE
13.1 SQLFiddle
13.2 Funkcje skalarne w innych systemach baz danych
13.3 Funkcja ROLLUP
13.4 Funkcja CUBE
13.5 Funkcja GROUPING SETS
13.6 Funkcja GROUPING
Szacunkowy nakład pracy studenta: ECTS x 25h = 30h
(K) - godziny kontaktowe (S) - godziny pracy samodzielnej
wykład (zajęcia): 0h (K) 0h (S)
ćwiczenia (zajęcia): 28h (K) 0h (S)
egzamin: 2h (K) 0h (S)
konsultacje: 5h (K) 0h (S)
przygotowanie do ćwiczeń: 0h (K) 10h (S)
przygotowanie do wykładów: 0h (K) 0h (S)
przygotowanie do kolokwium: 0h (K) 0h (S)
przygotowanie do egzaminu: 0h (K) 20h (S)
…: 0h (K) 0h (S)
Razem: 35h (K) + 30h (S) = 65h
Rodzaj przedmiotu
Koordynatorzy przedmiotu
Efekty kształcenia
Uczestnik kursu po jego zakończeniu będzie potrafił konstruować zarówno proste jak i skomplikowane zapytania w języku SQL, niezależnie od wersji bazy danych z której przyjdzie mu korzystać. Kursanci zapoznają się z najważniejszymi elementami baz danych takich jak tabele, widoki, relacje czy indeksy. Dzięki praktycznemu wymiarowi zajęć uczestnicy po jego ukończeniu będą mogli wykorzystać nabytą wiedzę w pracy czy podczas rozmów rekrutacyjnych.
Kryteria oceniania
2 kolokwia – pierwsze po przerobieniu 7 tematów, drugie pod koniec zajęć. Pierwsze kolokwium – 60 pkt, drugie kolokwium 40 pkt. Próg zaliczenia – 51 pkt.
Literatura
Kurs przygotowany jest na zasadzie samouczka. Po przerobieniu danego zakresu materiału przewidziane są zadania do wykonania, które zostały podzielone na 4 poziomy trudności:
• Zadania z poziomu podstawowego * - 19 zadań
• Zadania z poziomu średnio – zaawansowanego ** - 28 zadań
• Zadania z poziomu zaawansowanego *** - 11 zadań
• Zadania z poziomu ekspert **** - 7 zadań
Więcej informacji
Dodatkowe informacje (np. o kalendarzu rejestracji, prowadzących zajęcia, lokalizacji i terminach zajęć) mogą być dostępne w serwisie USOSweb: