Podstawy języka SQL
Strona 93
Materiały szkoleniowe
Prowadzący
Anna Pijanowska - Kuśnierz
Paweł Żołnierczyk
Spis treści
Zawartość tabel wykorzystywanych na kursie 5
Zawartość tabeli DEPT 6
Zawartość tabeli EMP 6
Zawartość tabeli SALGRADE 6
Budowa tabel wykorzystywanych na kursie 7
Relacyjny model danych 9
Operatory relacyjne 10
Własności relacyjnej bazy danych 10
Przegląd języka SQL 13
Zasady SQL 14
Ćwiczenia 28
Funkcje grupowe 31
Stosowanie funkcji grupowych 32
Klauzula GROUP BY 33
Wybierane wyrażenia a funkcje grupowe 34
Klauzula HAVING 35
Kolejność występowania klauzul 36
Ćwiczenia 37
Wybieranie danych z wielu tabel 39
Złączenie równościowe 40
Złączenia nierównościowe 41
Ćwiczenia 43
Inne metody łączenia tabel 47
Złączenia zewnętrzne 48
Połączenie tabeli samej ze sobą 48
Operatory zbiorowe 49
Ćwiczenia 52
Podzapytania 55
Podzapytania zagnieżdżone 56
Podzapytania zwracające jeden wiersz 56
Podzapytania zwracające wiele wierszy 57
Ćwiczenia 62
Język definiowania danych 63
Struktury danych ORACLE 64
Tworzenie tabel 64
Warunki integralności 65
Tworzenie tabeli przez zapytanie 70
Zmiana definicji tabeli 71
Język manipulowania danymi 75
Wstawianie wierszy 76
Modyfikacja wierszy 77
Usuwanie wierszy 77
Transakcje 78
Perspektywy 81
Perspektywy 82
Tworzenie perspektyw 82
Usuwanie perspektywy 83
Użytkownicy i uprawnienia 87
Zarządzanie użytkownikami 88
Uprawnienia w bazie Oracle 89
Role 91
DEPTNO DNAME LOC
---------- -------------- -------------
10 ACCOUNTING NEW YORK
20 RESEARCH DALLAS
30 SALES CHICAGO
40 OPERATIONS BOSTON
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO--------- ---------- --------- --------- -------- --------- --------- ---------
7839 KING PRESIDENT 81/11/17 5000 10
7698 BLAKE MANAGER 7839 81/05/01 2850 30
7782 CLARK MANAGER 7839 81/06/09 2450 10
7566 JONES MANAGER 7839 81/04/02 2975 20
7654 MARTIN SALESMAN 7698 81/09/28 1250 1400 30
7499 ALLEN SALESMAN 7698 81/02/20 1600 300 30
7844 TURNER SALESMAN 7698 81/09/08 1500 0 30
7900 JAMES CLERK 7698 81/12/03 950 30
7521 WARD SALESMAN 7698 81/02/22 1250 500 30
7902 FORD ANALYST 7566 81/12/03 3000 20
7369 SMITH CLERK 7902 80/12/17 800 20
7788 SCOTT ANALYST 7566 82/12/09 3000 20
7876 ADAMS CLERK 7788 83/01/12 1100 20
7934 MILLER CLERK 7782 82/01/23 1300 10
GRADE LOSAL HISAL
--------- --------- ---------
1 700 1200
2 1201 1400
3 1401 2000
4 2001 3000
5 3001 9999
Podczas kursu będziemy korzystać z uprzednio utworzonych tabel opisujących zatrudnionych w pewnej firmie, ich wynagrodzenia i miejsca pracy. Firma dzieli się na departamenty. Każdy pracownik należy do pewnej grupy zaszeregowania, w zależności od wysokości pensji, którą otrzymuje.
Kolumna
Opis
DEPTNO
Departament number — unikalny numer departamentu
DNAME
Nazwa departamentu — przechowywana w zapisie dużymi literami
LOC
Lokalizacja departamentu (miasto w którym znajduje się departament)
EMPNO
Employee number — unikalny numer pracownika
ENAME
Nazwisko pracownika — przechowywane w zapisie dużymi literami
JOB
Etat, stanowisko pracy
MGR
Identyfikator szefa (czyli EMPNO we wierszu szefa)
HIREDATE
Data zatrudnienia
SAL
Pensja
COMM
Prowizja naliczona od początku roku, dotyczy pracowników zatrudnionych na stanowisku SALESMAN
Numer departamentu w którym zatrudniony jest pracownik. Wartość w tym polu musi odpowiadać jednemu i tylko jednemu wierszowi w tabeli DEPT
GRADE
Numer grupy zaszeregowania
LOSAL
LOW SALARY — dolna granica widełek płacowych dla stawki zaszeregowania GRADE
HISAL
HIGH SALARY — górna granica widełek
gfab