SQL Szybki start.pdf

(312 KB) Pobierz
IDZ DO
PRZYK£ADOWY ROZDZIA£
SPIS TRE CI
SQL. Szybki start
Autor: Chris Fehily
T³umaczenie: Jaros³aw Gierlicki
ISBN: 83-7361-037-5
Tytu³ orygina³u:
SQL: Visual QuickStart Guide
Format: B5, stron: 416
KATALOG KSI¥¯EK
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
TWÓJ KOSZYK
DODAJ DO KOSZYKA
SQL jest uznawanym za standard jêzykiem programowania s³u¿¹cym do tworzenia,
modyfikowania oraz pobierania informacji przechowywanych przez systemy
zarz¹dzania relacyjnymi bazami danych. Chocia¿ ka¿dy system bazodanowy u¿ywa
nieco innego dialektu tego jêzyka, czêsto rozbudowuj¹c go o dodatkowe funkcje,
podstawowe instrukcje SQL s¹ wspólne dla wszystkich systemów: od Accessa do
Oracle'a.
Bogata w ilustracje, napisana przystêpnym jêzykiem ksi¹¿ka „SQL. Szybki start”
pozwoli Ci nauczyæ siê SQL-a i zacz¹æ pracê z relacyjn¹ baz¹ danych, niezale¿nie
do tego, który system wybierzesz. Autor k³adzie szczególny nacisk na realizacjê
konkretnych zadañ, przedstawiaj¹c kolejne kroki, jakie nale¿y wykonaæ, by rozwi¹zaæ
dany problem. Dziêki temu ksi¹¿ka jest nie tylko przewodnikiem po jêzyku SQL i jego
odmianach, ale tak¿e doskona³¹ pomoc¹, po któr¹ bêdziesz czêsto siêga³ w swojej
praktyce programistycznej.
W ksi¹¿ce omówiono m.in.:
• Najpopularniejsze systemy bazodanowe, ich wady i zalety
• Relacyjny model danych
• Podstawy jêzyka SQL: sk³adniê i najwa¿niejsze typy danych
• Pobieranie danych za pomoc¹ zapytañ
• Operatory i funkcje SQL
• Filtrowanie, grupowanie i sortowanie wyników zapytañ
• Dodawanie, usuwanie i modyfikowanie danych
• Korzystanie z indeksów
• U¿ywanie perspektyw
• Stosowanie transakcji
Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
O NOWO CIACH
ZAMÓW CENNIK
CZYTELNIA
FRAGMENTY KSI¥¯EK ONLINE
Spis treści
Spis treści
Wprowadzenie
Rozdział 1.
9
Wybrane systemy zarządzania bazami danych
23
Uruchamianie programów SQL........................................................... 24
Microsoft Access ............................................................................... 26
Microsoft SQL Server......................................................................... 29
Oracle ............................................................................................... 32
MySQL ............................................................................................. 35
PostgreSQL........................................................................................ 37
Relacyjny model danych
39
Tabele, kolumny i wiersze .................................................................. 40
Klucze główne .................................................................................. 44
Klucze obce....................................................................................... 46
Relacje .............................................................................................. 48
Normalizacja...................................................................................... 51
Przykładowa baza danych ................................................................... 56
Podstawy SQL-a
63
Składnia SQL-a ................................................................................. 64
Typy danych ...................................................................................... 69
Typy łańcuchów znaków..................................................................... 70
Typy łańcuchów bitowych .................................................................. 72
Typy liczb dokładnych........................................................................ 73
Typy liczb przybli onych.................................................................... 75
Typy daty i czasu .............................................................................. 76
Typy interwałowe (okresowe) ............................................................. 78
Wartości null ..................................................................................... 80
Pobieranie danych z tabeli
83
Pobieranie kolumn za pomocą fraz SELECT i FROM........................... 84
Tworzenie aliasów kolumn za pomocą słowa kluczowego AS ............... 87
Eliminowanie powtarzających się wierszy
za pomocą słowa kluczowego DISTINCT............................................ 90
Sortowanie wierszy za pomocą frazy ORDER BY................................ 92
5
Rozdział 2.
Spis treści
Rozdział 3.
Rozdział 4.
Spis treści
Filtrowanie wierszy za pomocą frazy WHERE .................................... 97
Łączenie i negacja warunków za pomocą operatorów AND, OR i NOT..100
Dopasowywanie szablonów za pomocą słowa kluczowego LIKE .........106
Filtrowanie poprzez zdefiniowanie zakresów
za pomocą słowa kluczowego BETWEEN..........................................110
Filtrowanie za pomocą list i słowa kluczowego IN ..............................113
Sprawdzanie występowania wartości null
za pomocą słowa kluczowego IS NULL..............................................116
Rozdział 5.
Operatory i funkcje
119
Tworzenie kolumn opartych na wyra eniach .......................................120
Wykonywanie operacji arytmetycznych..............................................122
Wyznaczanie kolejności wykonywania obliczeń..................................124
Sklejanie łańcuchów za pomocą operatora ||........................................125
Wyodrębnianie podłańcuchów za pomocą funkcji SUBSTRING().........129
Zmiana wielkości liter w łańcuchach
za pomocą funkcji UPPER() i LOWER() ............................................131
Obcinanie łańcuchów za pomocą funkcji TRIM() ................................133
Określanie długości łańcucha za pomocą funkcji
CHARACTER_LENGTH() ...............................................................136
Wyszukiwanie podłańcuchów za pomocą funkcji POSITION() ............138
Obliczenia operujące na wartościach daty i czasu................................140
Pobieranie bie ącej daty i czasu .........................................................142
Pobieranie informacji o u ytkowniku..................................................144
Konwertowanie typów danych za pomocą funkcji CAST() ..................145
Wyznaczanie wartości warunkowych za pomocą wyra enia CASE.......149
Sprawdzanie występowania wartości null
za pomocą funkcji COALESCE() .......................................................153
Wyra enia porównujące oparte na funkcji NULLIF()...........................154
Sumowanie i grupowanie danych
157
Wykorzystywanie funkcji agregujących..............................................158
Wyszukiwanie wartości minimalnych za pomocą funkcji MIN()...........160
Wyszukiwanie wartości maksymalnych za pomocą funkcji MAX() ......161
Obliczanie sumy za pomocą funkcji SUM() ........................................162
Obliczanie średniej za pomocą funkcji AVG().....................................163
Zliczanie wierszy za pomocą funkcji COUNT() ..................................164
Słowo kluczowe DISTINCT a funkcje agregujące ...............................165
Grupowanie wierszy za pomocą frazy GROUP BY .............................169
Filtrowanie grup za pomocą frazy HAVING .......................................175
Spis treści
Rozdział 6.
6
Spis treści
Rozdział 7.
Pobieranie danych z wielu tabel
179
Kwalifikowanie nazw kolumn ............................................................180
Tworzenie aliasów tabel za pomocą słowa kluczowego AS....................182
Złączenia ..........................................................................................184
Tworzenie złączeń za pomocą składni JOIN lub WHERE ....................186
Tworzenie złączeń krzy owych za pomocą frazy CROSS JOIN.............190
Tworzenie złączeń naturalnych za pomocą frazy NATURAL JOIN ......192
Tworzenie złączeń wewnętrznych za pomocą frazy INNER JOIN ........196
Tworzenie złączeń zewnętrznych za pomocą frazy OUTER JOIN ........220
Tworzenie autozłączeń.......................................................................233
Składanie wierszy za pomocą słowa kluczowego UNION ....................240
Wyszukiwanie wspólnych wierszy
za pomocą słowa kluczowego INTERSECT........................................249
Wyszukiwanie ró niących się wierszy
za pomocą słowa kluczowego EXCEPT..............................................251
Podzapytania
253
Idea podzapytań ................................................................................254
Składnia podzapytań .........................................................................256
Podzapytania a złączenia....................................................................257
Podzapytania proste i skorelowane .....................................................261
Podzapytania skorelowane ................................................................263
Kwalifikowanie nazw kolumn występujących w podzapytaniach..........267
Wartości null w podzapytaniach .........................................................268
Wykorzystywanie podzapytań jako wyra eń definiujących kolumny.....270
Dokonywanie porównań z wartością zwracaną przez podzapytanie
za pomocą operatora porównania........................................................276
Sprawdzanie przynale ności do zbioru za pomocą operatora IN ...........281
Dokonywanie porównań ze wszystkimi wartościami zwracanymi
przez podzapytanie za pomocą słowa kluczowego ALL ......................288
Dokonywanie porównań z niektórymi wartościami zwracanymi
przez podzapytanie za pomocą słowa kluczowego ANY .....................291
Sprawdzanie istnienia zadanych wartości za pomocą operatora EXISTS ..294
Porównywanie równowa nych zapytań...............................................302
Wstawianie, modyfikowanie i usuwanie wierszy
303
Wyświetlanie definicji kolumn tabel...................................................304
Wstawianie wierszy za pomocą konstrukcji INSERT ..........................307
Modyfikowanie wierszy za pomocą konstrukcji UPDATE ...................314
Usuwanie wierszy za pomocą konstrukcji DELETE ............................319
7
Rozdział 8.
Spis treści
Rozdział 9.
Spis treści
Spis treści
Rozdział 10.
Tworzenie, modyfikowanie i usuwanie tabel
323
Tworzenie tabel.................................................................................324
Idea atrybutów ..................................................................................325
Tworzenie nowych tabel za pomocą konstrukcji CREATE TABLE......327
Nieakceptowanie w kolumnach wartości null
za pomocą słowa kluczowego NOT NULL ........................................329
Określanie wartości domyślnych
za pomocą słowa kluczowego DEFAULT...........................................332
Określanie klucza głównego
za pomocą słowa kluczowego PRIMARY KEY .................................336
Określanie klucza obcego
za pomocą słowa kluczowego FOREIGN KEY ..................................339
Zapewnianie unikalnych wartości
za pomocą słowa kluczowego UNIQUE .............................................345
Określanie atrybutów weryfikacyjnych
za pomocą słowa kluczowego CHECK ..............................................348
Tworzenie tymczasowych tabel za pomocą konstrukcji
CREATE TEMPORARY TABLE .....................................................351
Tworzenie nowych tabel na bazie tabel istniejących
za pomocą konstrukcji SELECT INTO ..............................................354
Modyfikowanie tabel za pomocą konstrukcji ALTER TABLE .............358
Usuwanie tabel za pomocą konstrukcji DROP TABLE ........................361
Rozdział 11.
Indeksy
363
Tworzenie indeksów za pomocą konstrukcji CREATE INDEX ...........364
Usuwanie indeksów za pomocą konstrukcji DROP INDEX .................368
Rozdział 12.
Perspektywy
371
Tworzenie perspektyw za pomocą konstrukcji CREATE VIEW ............372
Pobieranie danych poprzez perspektywy .............................................377
Modyfikowanie danych poprzez perspektywy ....................................380
Usuwanie perspektyw za pomocą konstrukcji DROP VIEW.................385
Rozdział 13.
Transakcje
387
Wykonywanie transakcji ...................................................................388
Dodatek A
393
Tworzenie przykładowej bazy danych publikacje ................................394
Skorowidz
405
8
Zgłoś jeśli naruszono regulamin