Zawartość kursu
Podstawy zapytań SELECT
Celem tego bloku jest nauka podstawowej składni polecenia SELECT, używania aliasów, wyrażeń obliczeniowych oraz sortowania wyników
0/2
Filtrowanie danych – WHERE
Nauka filtrowania wierszy za pomocą klauzuli WHERE, operatorów porównania, BETWEEN, IN, LIKE, IS NULL oraz łączenia warunków AND/OR.
0/3
Funkcje wbudowane
Praktyczne zastosowanie funkcji tekstowych, liczbowych oraz daty i czasu dostępnych w Oracle SQL.
0/2
Łączenie tabel.
Łączenie tabel przy użyciu JOIN wewnętrznego i zewnętrznego, operatorów zbiorowych UNION i INTERSECT.
0/2
Grupowanie danych= GROUP BY, HAVING.
Agregowanie danych, funkcje grupujące oraz filtrowanie wyników zagregowanych.
Zapytania zagnieżdżone – SUBQUERIES
Podzapytania w klauzulach WHERE, FROM i SELECT. Operatory IN, EXISTS, ANY, ALL.
DDL i DML – Tworzenie i modyfikacja obiektów.
Tworzenie tabel, wstawianie, aktualizacja i usuwanie danych. Transakcje COMMIT / ROLLBACK.
Wskazówki do nauki i egzaminu Oracle SQL Fundamentals
Zbiór zadań: Wprowadzenie do pracy z Oracle SQL

Zadanie 25.

SELECT e.first_name, e.last_name, d.department_name
FROM employees e
JOIN departments d ON e.department_id = d.department_id;

 

Zadanie 26.

SELECT e.first_name, e.last_name, j.job_title
FROM employees e
JOIN jobs j ON e.job_id = j.job_id;

 

Zadanie 27.

SELECT e.first_name, e.last_name, d.department_name, l.city
FROM employees e
JOIN departments d ON e.department_id = d.department_id
JOIN locations l   ON d.location_id = l.location_id;

 

Zadanie 28.

SELECT e.employee_id, e.first_name, e.last_name
FROM employees e
LEFT JOIN departments d ON e.department_id = d.department_id
WHERE d.department_id IS NULL;

 

Zadanie 29.

SELECT d.department_name, e.first_name, e.last_name
FROM employees e
RIGHT JOIN departments d ON e.department_id = d.department_id
ORDER BY d.department_name;

 

Zadanie 30.

SELECT p.first_name || ' ' || p.last_name AS pracownik,
       m.first_name || ' ' || m.last_name AS przelozone
FROM employees p
JOIN employees m ON p.manager_id = m.employee_id;

 

Zadanie 31.

SELECT job_id FROM employees
INTERSECT
SELECT job_id FROM job_history;

 

Zadanie 32.

SELECT employee_id, first_name, last_name, 'IT' AS zrodlo
FROM employees
WHERE department_id = 60
UNION ALL
SELECT employee_id, first_name, last_name, 'MANAGER'
FROM employees
WHERE manager_id = 100;

 

📝 Omówienie

INNER JOIN zwraca tylko pasujące wiersze z obu tabel. LEFT/RIGHT JOIN zachowuje wszystkie wiersze z jednej strony. Self-join pozwala łączyć tabelę ze sobą – niezbędne do modelowania hierarchii (pracownik–przełożony). UNION usuwa duplikaty, UNION ALL ich nie usuwa. INTERSECT zwraca tylko wartości wspólne. Liczba i typy kolumn w UNION/INTERSECT muszą być identyczne.

 

Przewijanie do góry