Oracle_Database_12c_i_SQL_Programowanie_ord12p.pdf

(1859 KB) Pobierz
Tytuł oryginału: Oracle Database 12c SQL
Tłumaczenie: Andrzej Stefański
na podstawie „Oracle Database 11g i SQL. Programowanie”
w tłumaczeniu: Marcina Rogóża
ISBN: 978-83-246-9922-3
Original edition copyright © 2014 by McGraw-Hill Education (Publisher).
All rights reserved.
Polish edition copyright © 2015 by HELION S.A.
All rights reserved.
All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means,
electronic or mechanical, including photocopying, recording or by any information storage retrieval system,
without permission from the Publisher.
Wszelkie prawa zastrzeżone. Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszej
publikacji w jakiejkolwiek postaci jest zabronione. Wykonywanie kopii metodą kserograficzną,
fotograficzną, a także kopiowanie książki na nośniku filmowym, magnetycznym lub innym powoduje
naruszenie praw autorskich niniejszej publikacji.
Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi bądź towarowymi ich
właścicieli.
Autor oraz Wydawnictwo HELION dołożyli wszelkich starań, by zawarte w tej książce informacje były
kompletne i rzetelne. Nie biorą jednak żadnej odpowiedzialności ani za ich wykorzystanie, ani za związane
z tym ewentualne naruszenie praw patentowych lub autorskich. Autor oraz Wydawnictwo HELION nie
ponoszą również żadnej odpowiedzialności za ewentualne szkody wynikłe z wykorzystania informacji
zawartych w książce.
Wydawnictwo HELION
ul. Kościuszki 1c, 44-100 GLIWICE
tel. 32 231 22 19, 32 230 98 63
e-mail:
helion@helion.pl
WWW:
http://helion.pl
(księgarnia internetowa, katalog książek)
Drogi Czytelniku!
Jeżeli chcesz ocenić tę książkę, zajrzyj pod adres
http://helion.pl/user/opinie/ord12p
Możesz tam wpisać swoje uwagi, spostrzeżenia, recenzję.
Pliki z przykładami omawianymi w książce można znaleźć pod adresem:
ftp://ftp.helion.pl/przyklady/ord12p.zip
Printed in Poland.
Kup książkę
Poleć książkę
Oceń książkę
Księgarnia internetowa
Lubię to! » Nasza społeczność
Spis tre ci
Wprowadzenie
........................................................................................................................... 19
1
Wprowadzenie ........................................................................................................................... 23
Czym jest relacyjna baza danych? ................................................................................................ 23
Wst p do SQL ............................................................................................................................. 24
U ywanie SQL*Plus .................................................................................................................... 25
Uruchamianie SQL*Plus ...................................................................................................... 25
Uruchamianie SQL*Plus z wiersza polece ......................................................................... 26
Wykonywanie instrukcji SELECT za pomoc SQL*Plus ........................................................ 26
SQL Developer ........................................................................................................................... 27
Tworzenie schematu bazy danych sklepu .................................................................................... 30
Zawarto skryptu ............................................................................................................... 30
Uruchamianie skryptu ......................................................................................................... 31
Instrukcje DDL u ywane do tworzenia schematu bazy danych sklepu ................................. 32
Dodawanie, modyfikowanie i usuwanie wierszy .......................................................................... 38
Dodawanie wiersza do tabeli .............................................................................................. 38
Modyfikowanie istniej cego wiersza w tabeli ....................................................................... 39
Usuwanie wiersza z tabeli ................................................................................................... 40
czenie z baz danych i roz czanie .......................................................................................... 40
Ko czenie pracy SQL*Plus .......................................................................................................... 40
Wprowadzenie do Oracle PL/SQL ............................................................................................... 41
Podsumowanie ........................................................................................................................... 41
Pobieranie informacji z tabel bazy danych ................................................................................ 43
Wykonywanie instrukcji SELECT dla jednej tabeli ........................................................................ 43
Pobieranie wszystkich kolumn z tabeli ......................................................................................... 44
Wykorzystanie klauzuli WHERE do wskazywania wierszy do pobrania ........................................ 44
Identyfikatory wierszy .................................................................................................................. 44
Numery wierszy .......................................................................................................................... 45
Wykonywanie dzia a arytmetycznych ........................................................................................ 45
Wykonywanie oblicze na datach ....................................................................................... 46
Korzystanie z kolumn w obliczeniach .................................................................................. 47
Kolejno wykonywania dzia a .......................................................................................... 48
U ywanie aliasów kolumn ........................................................................................................... 48
czenie warto ci z kolumn za pomoc konkatenacji .................................................................. 49
Warto ci null ............................................................................................................................... 49
Wy wietlanie unikatowych wierszy .............................................................................................. 50
Porównywanie warto ci ............................................................................................................... 51
Operator <> ...................................................................................................................... 51
Operator > ......................................................................................................................... 52
Operator <= ...................................................................................................................... 52
Operator ANY ..................................................................................................................... 52
Operator ALL ...................................................................................................................... 52
2
Kup książkę
Poleć książkę
6
Oracle Database 12c i SQL. Programowanie
Korzystanie z operatorów SQL .....................................................................................................53
Operator LIKE ......................................................................................................................53
Operator IN .........................................................................................................................54
Operator BETWEEN .............................................................................................................55
Operatory logiczne ......................................................................................................................55
Operator AND .....................................................................................................................55
Operator OR .......................................................................................................................56
Nast pstwo operatorów .......................................................................................................56
Sortowanie wierszy za pomoc klauzuli ORDER BY .....................................................................57
Instrukcje SELECT wykorzystuj ce dwie tabele .............................................................................58
U ywanie aliasów tabel ...............................................................................................................59
Iloczyny kartezja skie ..................................................................................................................60
Instrukcje SELECT wykorzystuj ce wi cej ni dwie tabele .............................................................60
Warunki z czenia i typy z cze .................................................................................................61
Nierównoz czenia ..............................................................................................................61
Z czenia zewn trzne ..........................................................................................................62
Z czenia w asne .................................................................................................................65
Wykonywanie z cze za pomoc sk adni SQL/92 .......................................................................66
Wykonywanie z cze wewn trznych dwóch tabel z wykorzystaniem sk adni SQL/92 .........66
Upraszczanie z cze za pomoc s owa kluczowego USING ................................................67
Wykonywanie z cze wewn trznych obejmuj cych wi cej ni dwie tabele (SQL/92) .........67
Wykonywanie z cze wewn trznych z u yciem wielu kolumn (SQL/92) .............................68
Wykonywanie z cze zewn trznych z u yciem sk adni SQL/92 ..........................................68
Wykonywanie z cze w asnych z u yciem sk adni SQL/92 .................................................69
Wykonywanie z cze krzy owych z u yciem sk adni SQL/92 .............................................70
Podsumowanie ............................................................................................................................70
3
SQL*Plus ....................................................................................................................................71
Przegl danie struktury tabeli ........................................................................................................71
Edycja instrukcji SQL ...................................................................................................................72
Zapisywanie, odczytywanie i uruchamianie plików ......................................................................73
Formatowanie kolumn .................................................................................................................76
Ustawianie rozmiaru strony ..........................................................................................................77
Ustawianie rozmiaru wiersza ........................................................................................................78
Czyszczenie formatowania kolumny ............................................................................................78
U ywanie zmiennych ..................................................................................................................79
Zmienne tymczasowe ..........................................................................................................79
Zmienne zdefiniowane ........................................................................................................81
Tworzenie prostych raportów .......................................................................................................83
U ywanie zmiennych tymczasowych w skrypcie ..................................................................83
U ywanie zmiennych zdefiniowanych w skrypcie ................................................................84
Przesy anie warto ci do zmiennej w skrypcie .......................................................................84
Dodawanie nag ówka i stopki ..............................................................................................85
Obliczanie sum po rednich ..................................................................................................86
Uzyskiwanie pomocy od SQL*Plus ..............................................................................................87
Automatyczne generowanie instrukcji SQL ..................................................................................88
Ko czenie po czenia z baz danych i pracy SQL*Plus ................................................................88
Podsumowanie ............................................................................................................................89
Proste funkcje .............................................................................................................................91
Typy funkcji .................................................................................................................................91
Funkcje jednowierszowe ..............................................................................................................91
Funkcje znakowe .................................................................................................................92
Funkcje numeryczne ............................................................................................................98
4
Kup książkę
Poleć książkę
Spis tre ci
7
Funkcje konwertuj ce ....................................................................................................... 103
Funkcje wyra e regularnych ............................................................................................ 112
Funkcje agreguj ce .................................................................................................................... 117
AVG() ................................................................................................................................ 118
COUNT() .......................................................................................................................... 119
MAX() i MIN() .................................................................................................................... 119
STDDEV() .......................................................................................................................... 120
SUM() ............................................................................................................................... 120
VARIANCE() ...................................................................................................................... 120
Grupowanie wierszy .................................................................................................................. 120
Grupowanie wierszy za pomoc klauzuli GROUP BY ........................................................ 120
Nieprawid owe u ycie funkcji agreguj cych ...................................................................... 123
Filtrowanie grup wierszy za pomoc klauzuli HAVING ...................................................... 124
Jednoczesne u ywanie klauzul WHERE i GROUP BY ........................................................ 124
Jednoczesne u ywanie klauzul WHERE, GROUP BY i HAVING ......................................... 125
Podsumowanie ......................................................................................................................... 125
5
Sk adowanie oraz przetwarzanie dat i czasu ........................................................................... 127
Proste przyk ady sk adowania i pobierania dat ........................................................................... 127
Konwertowanie typów DataGodzina za pomoc funkcji TO_CHAR() i TO_DATE() .................... 128
Konwersja daty i czasu na napis za pomoc funkcji TO_CHAR() ........................................ 128
Konwersja napisu na wyra enie DataGodzina za pomoc funkcji TO_DATE() ................... 132
Ustawianie domy lnego formatu daty ........................................................................................ 134
Jak Oracle interpretuje lata dwucyfrowe? .................................................................................. 135
U ycie formatu YY ............................................................................................................ 135
U ycie formatu RR ............................................................................................................ 136
Funkcje operuj ce na datach i godzinach .................................................................................. 137
ADD_MONTHS() .............................................................................................................. 138
LAST_DAY() ...................................................................................................................... 138
MONTHS_BETWEEN() ...................................................................................................... 138
NEXT_DAY() ...................................................................................................................... 139
ROUND() .......................................................................................................................... 139
SYSDATE ........................................................................................................................... 140
TRUNC() ........................................................................................................................... 140
Strefy czasowe .......................................................................................................................... 140
Funkcje operuj ce na strefach czasowych ......................................................................... 141
Strefa czasowa bazy danych i strefa czasowa sesji .............................................................. 141
Uzyskiwanie przesuni strefy czasowej ............................................................................ 142
Uzyskiwanie nazw stref czasowych .................................................................................... 143
Konwertowanie wyra enia DataGodzina z jednej strefy czasowej na inn ......................... 143
Datowniki (znaczniki czasu) ...................................................................................................... 143
Typy datowników .............................................................................................................. 144
Funkcje operuj ce na znacznikach czasu ........................................................................... 147
Interwa y czasowe ..................................................................................................................... 151
Typ INTERVAL YEAR TO MONTH .................................................................................... 152
Typ INTERVAL DAY TO SECOND ..................................................................................... 153
Funkcje operuj ce na interwa ach ..................................................................................... 155
Podsumowanie ......................................................................................................................... 156
Podzapytania ........................................................................................................................... 157
Rodzaje podzapyta .................................................................................................................. 157
Pisanie podzapyta jednowierszowych ...................................................................................... 157
Podzapytania w klauzuli WHERE ....................................................................................... 157
U ycie innych operatorów jednowierszowych ................................................................... 158
6
Kup książkę
Poleć książkę
Zgłoś jeśli naruszono regulamin