Download as pdf or txt
Download as pdf or txt
You are on page 1of 49

Bazy danych

Joanna
Raczek,
Magda
Dettlaff

Bazy danych
Wykad 1

Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

Joanna Raczek
Joanna.Raczek@pg.gda.pl
Magda Dettlaff
mdettlaff@mif.pg.gda.pl

SAS
Laboratorium
Oracle

Wydzia Fizyki Technicznej i Matematyki Stosowanej


Politechnika Gdaska

29 lutego 2016

Co to jest baza danych?


Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

Przegld definicji (1)


Zbir danych opisujcy pewien wybrany fragment
rzeczywistoci nazywamy baz danych.
Baza danych to zbir danych, uszeregowanych zgodnie z
pewn struktur i wykorzystywanych w celu modelowania
pewnej organizacji lub pewnego procesu organizacyjnego.
Baza danych to zbir powizanych ze sob logicznie
danych, zorganizowany zgodnie z okrelonym modelem
danych.
Bazy danych mog by implementowane za porednictwem
systemu komputerowego, ale mog te sprowadza si do
zbioru kartek.

Co to jest baza danych?


Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

Przegld definicji (2)


Baza danych to zbir danych zapisanych w cile okrelony
sposb w strukturach odpowiadajcych zaoonemu
modelowi danych. W potocznym ujciu obejmuje dane
oraz program komputerowy wyspecjalizowany do
gromadzenia i przetwarzania tych danych. Program taki
(czsto pakiet programw) nazywany jest Systemem
zarzdzania baz danych (ang. DataBase Management
System, DBMS). W cisej nomenklaturze baza danych
oznacza zbir danych, ktry zarzdzany jest przez system
DBMS. Wikipedia

Co to jest baza danych?


Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

Przegld definicji (3)


Baza danych termin ten oznacza, w rozumieniu Ustawy
z dnia 27 lipca 2001 r. o ochronie baz danych, zbir
danych lub jakichkolwiek materiaw i elementw
zgromadzonych wedug okrelonej systematyki lub metody,
indywidualnie dostpnych w jakikolwiek sposb, w tym
rodkami elektronicznymi, wymagajcy istotnego, co do
jakoci lub iloci, nakadu inwestycyjnego w celu
sporzdzenia, weryfikacji lub prezentacji jego zawartoci.
Bazy danych operuj gwnie na danych tekstowych i
liczbowych, lecz wikszo wspczesnych baz umoliwia
przechowywanie danych binarnych typu: grafika, muzyka itp.

Analityczne i operacyjne bazy danych


Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

Podstawowe rodzaje baz danych


Analityczne bazy danych s wykorzystywane do
przechowywania danych np. historycznych, informacji
zwizanych z pewnymi wydarzeniami. Dane w bazie
analitycznej s statyczne.
Operacyjne bazy danych przechowuj dane dynamiczne,
czyli takie, ktre ulegaj cigym zmianom i
odzwierciedlaj aktualny stan obiektu.
Bazy danych dugo yj kilka, kilkadzisit, kilkaset lat.

Cechy idealnej bazy danych


Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

Wymagania stawiane bazom danych (1)


Spjno, czyli poprawno danych z punktu widzenia
przyjtych kryteriw:
wierne odzwierciedlenie danych rzeczywistych;
spenianie ogranicze naoonych przez uytkownikw;
odporno na awarie;
odporno na przypadkowe bdy uytkownika;
odporno na anomalie bdce wynikiem wspbienego
dostpu do bazy danych.

Baza danych nie moe by krzywym zwierciadem.

Cechy idealnej bazy danych


Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

Wymagania stawiane bazom danych (2)


Efektywne przetwarzanie danych, czyli baza danych
powinna umie:
wstawia nowe dane;
modyfikowa dane istniejce;
usuwa dane;
wyszukiwa dane

bez specjalistycznej wiedzy uytkownika o fizycznym


przechowywaniu danych w bazie.

Cechy idealnej bazy danych


Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

Wymagania stawiane bazom danych (3)


Poprawne modelowanie wiata rzeczywistego, czyli
struktura bazy danych musi odzwierciedla we waciwy i
poprawny sposb obiekty wiata rzeczywistego i
powizania pomidzy tymi obiektami.
Autoryzacja dostpu do danych, czyli
uytkownicy s identyfikowani unikaln nazw i hasem,
kady uytkownik posiada okrelone uprawnienia w bazie
danych.

prawa administratora a zwykego uytkownika

Cechy idealnej bazy danych


Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL

Wymagania stawiane bazom danych (4)


Wspbieno dostpu do danych, czyli baza danych
powinna poprawnie radzi sobie z
konfliktami zapiszapis, zapisodczyt;
rwnoczesnym dostpem do danych przez wielu
uytkownikw.

SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

Metadane, czyli baza danych powinna posiada wsparcie


dla danych o bazie danych (struktury danych, uytkownicy
i ich uprawnienia).

Modele baz danych


Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

Historyczne modele baz danych, np.:


model hierarchiczny;
model sieciowy.

RMBD - Relacyjny Model Baz Danych:


E.F.Codd, Relacyjny model logiczny dla duych bankw
danych, IBM 1970.
Oparty na teorii mnogoci i rachunku predykatw
pierwszego rzdu;
Dane przechowuje si w relacjach, postrzeganych przez
uytkownika jako tabele;
Kada tabela skada si z rekordw (krotek) i pl;
Fizyczna kolejno pl i rekordw jest bez znaczenia;
Kady rekord jest wyrniany przez jedno pole (lub zbir
pl), zawierajce unikatow dla niego warto.

Model relacyjny, przykad


Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

Operacyjna baza danych Grubego Zawiadowcy


Lokomotywy
Nazwa

Peron

Odjazd

Tomek
Kuba
Gabry
Piotrek

1
5
4
NULL

7:45
4:50
8:20
NULL

SQL
SELECT
Funkcje arytmetyczne

Wagony

SAS
Laboratorium
Oracle

Nazwa

Lokomotywa

Ania
Klara
Nieznone Wagony Towarowe
Express

Tomek
Tomek
Kuba
Gabry

Formalne definicje
Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL

W modelu relacyjnym:
Pole to najmniejsza cz skadowa bazy danych.
Kade pole posiada swoj domen, czyli dziedzin.
Definiuje ona zbir wartoci, jakie moe przyjmowa pole
poprzez okrelenie typu danych. Elementem dziedziny
moe by specjalna warto nieokrelona NULL.

Algebra relacji

SQL
SELECT

Relacja R jest podzbiorem iloczynu kartezjaskiego


dziedzin, czyli

Funkcje arytmetyczne

SAS
Laboratorium
Oracle

R dom(A1 ) dom(A2 ) dom(An ).


Elementami relacji s rekordy. Jeli r R, to
r = (v1 , v2 , . . . , vn ), gdzie vi jest elementem dom(Ai ), dla
kadego i = 1, 2, . . . , n.

Formalne definicje
Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

W modelu relacyjnym:
Atrybut A to nazwa kolumny, czyli nazwa pl.
Kady atrybut ma unikaln nazw.
Schematem relacji R nazywamy list atrybutw relacji,
czyli R(A1 , A2 , . . . , An ), gdzie A1 , A2 , . . . , An to atrybuty
relacji.
Liczb atrybutw skadajcych si na schemat relacji R
nazywamy stopniem relacji.

Przykad bazy Grubego Zawiadowcy


Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

Lokomotywy
Nazwa

Peron

Odjazd

Tomek
Kuba
Gabry
Piotrek

1
5
4
NULL

7:45
4:50
8:20
NULL

SQL
SELECT

Ile tu pl? Ile rekordw?

Funkcje arytmetyczne

SAS

Atrybuty? Dziedziny?

Laboratorium
Oracle

Schemat i stopie relacji Lokomotywy?

Przykad bazy Grubego Zawiadowcy


Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

Lokomotywy
Nazwa

Peron

Odjazd

Tomek
Kuba
Gabry
Piotrek

1
5
4
NULL

7:45
4:50
8:20
NULL

SQL
SELECT

Ile tu pl? Ile rekordw?

Funkcje arytmetyczne

SAS

Atrybuty? Dziedziny?

Laboratorium
Oracle

Schemat i stopie relacji Lokomotywy?


Lokomotywy(Nazwa, Peron, Odjazd);
(Tomek, 1, 7:45) Lokomotywy.

Formalne definicje
Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

Wnioski z definicji
Relacja to podzbir iloczynu kartezjaskiego dziedzin, a
zatem
Kolejno rekordw w tabeli zupenie nie jest istotna.
Tabele nie zawieraj rekordw powtarzajcych si. Kady
rekord jest unikatowy.

Kolejno atrybutw w relacji (czyli kolumn w tabeli) nie


jest istotna, jednak naley t kolejno ustali na etapie
projektowania relacji. Z tej kolejnoci wynika kolejno pl
w rekordzie, gdy r = (v1 , v2 , . . . , vn ).

NULL (warto nieokrelona, nieznana)


Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

Kiedy pewna warto nie jest znana lub te nie ma jej w


ogle, to mwimy, e jest ona nieokrelona, nieznana lub
e jest rwna NULL.
Warto nieznana nie oznacza zera czy te spacji bd
pustego acucha znakw.
Wartoci nieznane w tabelach mog by rezultatem bdu
czowieka lub w przypadku wartoci, ktre nie s
zdefiniowane lub nie dotycz danego rekordu.
Numer domu, mieszkania, kolor wosw...
Kade dziaanie, w ktrym wystpuje warto NULL,
rwnie zwrci NULL! (Logika trjwartociowa)

Algebra relacji
Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT

Operacje algebry relacji


Zwyczajne dziaania algebry zbiorw, czyli
suma;
przecicie;
rnica.

Operacje zawenia:
selekcja wybiera pewne wiersze;
rzutowanie wybiera pewne kolumny;

Funkcje arytmetyczne

SAS
Laboratorium
Oracle

Rne inne:
iloczyn kartezjaski;
zczenie naturalne;
zczenie wewntrzne;
zczenie zewntrzne.

Algebra relacji
Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

Operacje zawenia
Selekcja jest dziaaniem jednoargumentowym.
Selekcja wydobywa z wejciowej relacji wiersze, ktre
pasuj do podanego warunku i przekazuje je do relacji
wynikowej.
Relacja wynikowa jest zatem podzbiorem relacji
wejciowej. Obie maj takie same schematy.

SAS
Laboratorium
Oracle

Selekcja moe by uwaana za poziom maszyn do


cicia.

Przykad bazy Grubego Zawiadowcy


Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

Lokomotywy
Nazwa

Peron

Odjazd

Tomek
Kuba
Gabry
Piotrek

1
5
4
NULL

7:45
4:50
8:20
NULL

SELECT * FROM Lokomotywy WHERE Peron > 3;


Lokomotywy
Nazwa

Peron

Odjazd

Kuba
Gabry

5
4

4:50
8:20

SAS
Laboratorium
Oracle

SELECT * FROM Lokomotywy WHERE Peron = 4 or Peron


=5;
Lokomotywy
Nazwa

Peron

Odjazd

Kuba
Gabry

5
4

4:50
8:20

Algebra relacji
Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

Operacje zawenia
Rzutowanie jest dziaaniem jednoargumentowym.
Rzutowanie wydobywa z wejciowej relacji kolumny, ktre
pasuj do podanego warunku i przekazuje je do relacji
wynikowej.
Relacja wynikowa nie jest podzbiorem relacji wejciowej,
gdy maj one rne schematy.

SAS
Laboratorium
Oracle

Rzutowanie moe by uwaane za pionow maszyn do


cicia.

Przykad bazy Grubego Zawiadowcy


Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania

Lokomotywy
Nazwa

Peron

Odjazd

Tomek
Kuba
Gabry
Piotrek

1
5
4
NULL

7:45
4:50
8:20
NULL

RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

SELECT Peron, Odjazd FROM


Lokomotywy;

SELECT Nazwa FROM


Lokomotywy;

Lokomotywy

Lokomotywy

Peron

Odjazd

Nazwa

1
5
4
NULL

7:45
4:50
8:20
NULL

Tomek
Kuba
Gabry
Piotrek

Jzyk SQL
Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

Podstawowe infromacje
SQL Structured Query Language
SQL jest jzykiem ustandaryzowanym. Jego standaryzacj
zajmuje si midzynarodowy komitet, w skad ktrego
wchodz przedstawiciele najwikszych producentw (IBM,
Oracle, Microsoft).
Producenci systemw komercyjnych i niekomercyjnych
staraj si implementowa co najmniej standard SQL-92.
Najbardziej popularne:
Oracle wersja 10g, 11g;
Microsoft SQL Server 2005, 2008;
MySQL;
PostgreSQL.

Jzyk SQL
Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

Cechy SQL
SQL jest jzykiem deklaratywnym. Wyraamy, CO ma by
zrobione, a nie JAK.
SQL jest zorientowany na przetwarzanie zbiorw.
SQL nie rozrnia maych i wielkich liter w sowach
kluczowych, nazwach tabel i atrybutw.
W poleceniach SQL ignorowane s znaki koca linii.
Kade polecenie SQL powinno by zakoczone rednikiem.
Polecenia SQL mona podzieli na:
DML Data Manipulation Language;
DDL Data Definition Language;
DCL Data Control Language.

Jzyk SQL
Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

Polecenia DML
Odczytywanie danych z relacji SELECT.
Wstawianie danych do relacji INSERT.
Modyfikacja danych z relacji UPDATE.
Usuwanie danych z relacji MERGE, DELETE.

Polecenia DDL
Tworzenie relacji CREATE.
Modyfikacja relacji ALTER.
Usuwanie relacji DROP.

Polecenia DCL
Zapewnienie autoryzacji dostpu do danych GRANT,
REVOKE.
Zarzdzanie transakcjami COMMIT, ROLLBACK,
SAVEPOINT.

SELECT
Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

Odczytaj wszystkie dane z tableli Lokomotywy.

SELECT
Bazy danych
Joanna
Raczek,
Magda
Dettlaff

Odczytaj wszystkie dane z tableli Lokomotywy.


SELECT * FROM Lokomotywy;
Lokomotywy
Nazwa

Peron

Odjazd

Cel

Tomek
Kuba
Gabry
Piotrek

1
5
4
6

7:45
4:50
8:20
11:45

Plantacja truskawek
Kopalnia soli
Port
Kamienioom

Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

SELECT
Bazy danych
Joanna
Raczek,
Magda
Dettlaff

Odczytaj wszystkie dane z tableli Lokomotywy.


SELECT * FROM Lokomotywy;
Lokomotywy
Nazwa

Peron

Odjazd

Cel

Tomek
Kuba
Gabry
Piotrek

1
5
4
6

7:45
4:50
8:20
11:45

Plantacja truskawek
Kopalnia soli
Port
Kamienioom

Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

SELECT Nazwa Nazwa lokomotywy, Peron,


Odjazd Godzina odjazdu, Cel FROM
Lokomotywy;
Lokomotywy
Nazwa lokomotywy

Peron

Godzina odjazdu

Cel

Tomek
Kuba
Gabry
Piotrek

1
5
4
6

7:45
4:50
8:20
11:45

Plantacja truskawek
Kopalnia soli
Port
Kamienioom

Operatory porwnania w klauzuli WHERE


Oracle i SAS
Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL

Operatory porwnania
=, eq (SAS) czy rwne.
<>, ! = (Oracle), not eq (SAS) czy rne.
>, >=, <, <= czy wiksze, czy wiksze lub rwne, czy
mniejsze, czy mniejsze lub rwne.
gt, ge, lt, le tylko SAS.

Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

Su do porwnywania liczb, acuchw znakw wedug


porzdku alfabetycznego oraz dat.
SELECT * FROM Lokomotywy WHERE Nazwa <
Tomek;
SELECT * FROM Lokomotywy WHERE Cel <>
Plantacja truskawek;

Operatory porwnania w klauzuli WHERE


Oracle i SAS
Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje

BETWEEN ...AND ... sprawdza, czy jedna warto


znajduje si pomidzy dwoma innymi wcznie.

Wymagania
RMBD
NULL

Wymaga si, aby warto po lewej stronie AND bya


mniejsza od wartoci po prawej stronie AND.

Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

SELECT * FROM Lokomotywy WHERE Nazwa BETWEEN


H AND M;
SELECT * FROM Lokomotywy WHERE Peron BETWEEN
1 AND 6;

Operatory porwnania w klauzuli WHERE


Oracle i SAS
Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania

IN(lista) sprawdza, czy dana warto wystpuje cho raz


na licie.
NOT IN(lista) sprawdza, czy dana warto nie wystpuje
na licie.

RMBD
NULL
Algebra relacji

SQL
SELECT

Elementami listy mog by liczby, acuchy znakw, daty,


jednak wymaga si, aby wszystkie elementy listy byy tego
samego typu.

Funkcje arytmetyczne

SAS
Laboratorium
Oracle

SELECT * FROM Lokomotywy WHERE Nazwa


IN(Jakub, Kuba,Kubu);
SELECT * FROM Lokomotywy WHERE Peron NOT
IN(13, 1313, 131313);

Operatory porwnania w klauzuli WHERE


Oracle i SAS
Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje

IS NULL sprawdza, czy dana warto jest wartoci


nieokrelon.

Wymagania
RMBD
NULL

IS NOT NULL sprawdza, czy dana warto nie jest


wartoci nieokrelon.

Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

SELECT * FROM Lokomotywy WHERE Peron IS NULL;


Czy mona napisa tak:
SELECT * FROM Lokomotywy WHERE Peron = NULL;
??

Operatory porwnania w klauzuli WHERE


Oracle i SAS
Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

LIKE . . . jest specjalnym operatorem do zoonego


porwnywania acuchw znakw.
Znaki specjalne:
% oznacza dowolny cig znakw, moe to by cig pusty;
oznacza dokadnie jeden dowolny znak.

Dziaa w Oracle i w SAS, jednak w SAS musimy uy


cudzysowiw pojedynczych, bo w podwjnych SAS
zinterpretuje to jako zmienne jzyka makr.
SELECT * FROM Lokomotywy WHERE Nazwa LIKE
%ski;
SELECT * FROM Lokomotywy WHERE Cel LIKE
M j ;

Operatory logiczne
Oracle i SAS
Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje

AND, OR, NOT SAS i Oracle.


&, |, , ,

SAS.

Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

Znaczki dla NOT w SAS zale od klawiatury.


Priorytety w SAS: not, and, or.
select * from flights.Admit where
(date <10);

sex=M &

where (product=GRAPH or product=STAT) and


country=Canada;

Sortowanie wynikw zapytania


Oracle i SAS
Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

ORDER BY . . . suy do sortowania niemalejco


wynikw dziaania polecenia SELECT.
DESC zmienia porzdek sortowania na nierosncy.
W Oracle wartoci nieznane s wywietlane jako ostatnie
przy sortowaniu niemalejcym oraz jako pierwsze przy
sortowaniu nierosncym.
SELECT Nazwa, Peron FROM Lokomotywy WHERE
Peron > 1 ORDER BY Nazwa;
SELECT Nazwa FROM Lokomotywy ORDER BY Peron;
SELECT * FROM Lokomotywy Order by Nazwa,
Peron DESC, Cel;

Operatory arytmetyczne
Oracle i SAS
Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

+, -, *, / dodawanie, odejmowanie, mnoenie, dzielenie.


Zachowana jest standardowa kolejno wykonywania
dziaa.
SELECT Nazwa, Peron*100 Peron w procentach
FROM Lokomotywy;
SELECT Nazwa, (Peron+3)*7-12 Peron
zaszyfrowany FROM Lokomotywy;
Lokomotywy

SAS

Nazwa

Peron zaszyfrowany

Laboratorium
Oracle

Tomek
Kuba
Gabry
Piotrek

16
44
37
51

Funkcje arytmetyczne
Oracle
Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania

ROUND zaokrglenie, mona okreli liczb miejsc po


przecinku.

NULL

SELECT Nazwa, ROUND((Peron+4)/7,2) Peron


zaokrglony FROM Lokomotywy;

Algebra relacji

Lokomotywy

RMBD

SQL

Nazwa

Peron

Peron zaokrglony

Tomek
Kuba
Gabry
Piotrek

0,(714285)
1,(285714)
1,(142857)
1,(428571)

0,71
1,29
1,14
1,43

SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

Funkcje arytmetyczne
SAS
Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT

ROUND zaokrglenie, mona okreli, e zaokrglenie


ma by jak najblisze wielokrotnoci drugiego argumentu.
ROUND((Peron+4)/7,100) zaokglenie do setek;
ROUND((Peron+4)/7,0.1) zaokglenie do dziesitych
czci;

Funkcje arytmetyczne

SAS
Laboratorium
Oracle

ROUND((Peron+4)/7,2) zaokglenie do liczby parzystej;

Funkcje arytmetyczne
Oracle i SAS
Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT

TRUNC obcicie.
w Oracle drugi argument to liczba miejsc po przecinku.
w SAS drugi argument to ilo bajtw do zapisu liczby.

SELECT Nazwa, TRUNC((Peron+4)/7,2) Peron


obcity FROM Lokomotywy;
Lokomotywy
Nazwa

Peron

Peron obcity

Tomek
Kuba
Gabry
Piotrek

0,(714285)
1,(285714)
1,(142857)
1,(428571)

0,71
1,28
1,14
1,42

Funkcje arytmetyczne

SAS
Laboratorium
Oracle

Funkcje arytmetyczne
Oracle i SAS
Bazy danych
Joanna
Raczek,
Magda
Dettlaff

MOD oblicza reszt z dzielenia przez podan liczb.

Definicje

SQRT oblicza pierwiastek.

Wymagania

SELECT Nazwa, MOD(Peron,2), SQRT(Peron) FROM


Lokomotywy;

RMBD
NULL
Algebra relacji

Lokomotywy

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

Nazwa

MOD(Peron,2)

SQRT(Peron)

Tomek
Kuba
Gabry
Piotrek

1
1
0
0

1
2,23606797749978969640917366873127623544
2
2,44948974278317809819728407470589139197

SQL w SAS
Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

SQL w SAS
Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

Proc sql
proc sql jest SAS-ow implementacj jzyka SQL.
Mona doda opcje, np. proc sql outobs=15;
Na kocu piszemy quit;
W rodku polecenia SQL;
Mona uywa dodatkowo innych komend jzyka SAS
4GL, ktrch nie ma w standardzie ANSII.
F8, biegncy ludzik...

SQL w SAS
Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

SQL w SAS
Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

SQL w SAS
Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

Proc sql
describe table suy w SAS do odczytania schematu tabeli.
Np. describe table sashelp.shoes;
Schemat zostaje wywietlony w logu.
Typy danych w SAS;
Informat, label i format.

SQL w SAS
Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

Laboratorium Oracle
Bazy danych
Joanna
Raczek,
Magda
Dettlaff

Aby zaoy konto na wydziaowym serwerze uczelnianym


Naley mie dziaajce konto na serwerze uczelnianym.
Wej na stron 10.60.10.90.

Definicje

Wybra serwer pocztowy (student.pg.gda.pl)

Wymagania

Wpisa swj login.

RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

Odebra poczt na student.pg.gda.pl, przekopiowa


odpowiedni link do przegldarki.
Ponownie odebra poczt powinien przyj e-mail z
loginem i hasem do Oracle.
Uruchomi Oracle SQL Developer.
Pierwsze pole swoja nazwa (cokolwiek), drugie login,
trzecie haso, zamiast localhost wpisa 10.60.10.90, a w
polu SID oraclemif.
Konto na Oralce bdzie dziaa przez rok.

Laboratorium Oracle
Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD
NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

Laboratorium Oracle
Bazy danych
Joanna
Raczek,
Magda
Dettlaff
Definicje
Wymagania
RMBD

Warto obejrze (klikn na napis)

NULL
Algebra relacji

SQL
SELECT
Funkcje arytmetyczne

SAS
Laboratorium
Oracle

czenie si z Oracle.

You might also like