načítání...
nákupní košík
Košík

je prázdný
a
b

E-kniha: SQL pro blbce -- 2. rozšířené vydání - Vladimír Klaus; Jaroslav Hajný

SQL pro blbce -- 2. rozšířené vydání

Elektronická kniha: SQL pro blbce -- 2. rozšířené vydání
Autor: ;

Příručka SQL pro blbce je určena pro všechny, kteří se chtějí seznámit s jazykem SQL, ale i pro ty, kteří celý život s SQL zápasí a občas si potřebují některé detaily nebo málo ... (celý popis)
Titul je skladem - ke stažení ihned
Médium: e-kniha
Vaše cena s DPH:  149
+
-
5
bo za nákup

hodnoceni - 0%hodnoceni - 0%hodnoceni - 0%hodnoceni - 0%hodnoceni - 0%   celkové hodnocení
0 hodnocení + 0 recenzí

Specifikace
Nakladatelství: » Palmknihy
Dostupné formáty
ke stažení:
PDF, EPUB, MOBI, PDF
Upozornění: většina e-knih je zabezpečena proti tisku
Médium: e-book
Počet stran: 140
Jazyk: česky
ADOBE DRM: bez
ISBN: 978-80-748-6003-4
Ukázka: » zobrazit ukázku
Popis

Příručka SQL pro blbce je určena pro všechny, kteří se chtějí seznámit s jazykem SQL, ale i pro ty, kteří celý život s SQL zápasí a občas si potřebují některé detaily nebo málo známé příkazy připomenout. Všechny příkazy a funkce jsou názorně a velmi jednoduše vysvětlovány a předvedeny na mnoha konkrétních příkladech z praxe. V druhém vydání najdete na 140 stranách téměř 180 příkladů SQL včetně 220 doprovodných obrázků, 27 zcela nových kapitol a změny ve více než 20 kapitolách z prvního vydání. Celá příručka prošla důkladnou revizí a řada funkcí a příkazů je popisována detailněji nebo doplněna o další příklady. Vylepšení a rozšíření se dočkal také doprovodný web.

Zařazeno v kategoriích
Vladimír Klaus; Jaroslav Hajný - další tituly autora:
Recenze a komentáře k titulu
Zatím žádné recenze.


Ukázka / obsah
Přepis ukázky

Vladimír Klaus, Jaroslav Hajný

SQL pro blbce

SQL pro blbce

Copyright © 2014 by Vladimír Klaus, Jaroslav Hajný

Cover design © 2014 by Vladimír Klaus

Veškerá práva vyhrazena. Žádná část tohoto díla nesmí být reprodukována ani elektronicky

přenášena či šířena bez předchozího písemného souhlasu majitele autorských práv.

Odpovědný redaktor: Jiří Vlček

Jazyková redakce: AUDREY software

Korektura: Vladimír Tobyáš

Sazba: Vladimír Klaus

Obálka: Vladimír Klaus

Vydání druhé

Vydalo nakladatelství Palmknihy s.r.o., Malá Štupartská 7, Praha 1, v únoru 2014

ISBN: 978-80-7486-033-1 (ePub)

ISBN: 978-80-7486-034-8 (mobi)

ISBN: 978-80-7486-035-5 (PDF)

2/140


Vladimír Klaus, Jaroslav Hajný

SQL pro blbce

Obsah

Úvod ............................................................................................................................................... 7

Komu je příručka určena ..................................................................................................................... 7

Co zde najdete ..................................................................................................................................... 7

Doprovodná databáze ......................................................................................................................... 7

Poděkování čtenářům ......................................................................................................................... 7

Co je nového ........................................................................................................................................ 8

Základní příkazy ............................................................................................................................ 10

Příkaz SELECT ..................................................................................................................................... 10

Příkaz ORDER BY ................................................................................................................................ 11

Příkaz WHERE .................................................................................................................................... 13

Příkaz GROUP BY ............................................................................................................................... 15

Příkaz HAVING ................................................................................................................................... 17

Agregační funkce ........................................................................................................................... 19

Funkce SUM ....................................................................................................................................... 19

Funkce COUNT ................................................................................................................................... 19

Funkce AVG ....................................................................................................................................... 20

Funkce MIN a MAX ............................................................................................................................ 21

Funkce FIRST a LAST .......................................................................................................................... 21

Statistické agregační funkce .......................................................................................................... 24

Funkce STDEV .................................................................................................................................... 24

Funkce STDEVP .................................................................................................................................. 25

Funkce VAR ........................................................................................................................................ 25

Funkce VARP ...................................................................................................................................... 26

Další funkce ................................................................................................................................... 27

Funkce LCASE, UCASE ........................................................................................................................ 27

Funkce LEFT, RIGHT ........................................................................................................................... 27

Funkce MID ........................................................................................................................................ 28

Funkce TRIM, LTRIM, RTRIM ............................................................................................................. 29

Funkce REPLACE ................................................................................................................................ 30

Funkce SWITCH.................................................................................................................................. 31

3/140


Vladimír Klaus, Jaroslav Hajný

SQL pro blbce

Funkce CHOOSE ................................................................................................................................. 33

Funkce LEN ........................................................................................................................................ 34

Přetypování čísla na text ................................................................................................................... 35

Přetypování textu na číslo ................................................................................................................. 37

Funkce ASC a ASCW ........................................................................................................................... 39

Funkce CHR a CHRW .......................................................................................................................... 40

Funkce SGN........................................................................................................................................ 42

Funkce DATEPART ............................................................................................................................. 45

Funkce ROUND .................................................................................................................................. 47

Trigonometrické funkce .................................................................................................................... 50

Aritmetické funkce ............................................................................................................................ 53

Spojování tabulek ......................................................................................................................... 57

Příkaz INNER JOIN .............................................................................................................................. 57

Příkaz LEFT JOIN ................................................................................................................................ 59

Příkaz RIGHT JOIN .............................................................................................................................. 61

Příkazy INNER JOIN, LEFT JOIN a RIGHT JOIN graficky ...................................................................... 62

Příkaz OUTER JOIN ............................................................................................................................. 62

Příkaz CROSS JOIN ............................................................................................................................. 63

Příkaz UNION a UNION ALL ............................................................................................................... 66

Příkaz INTERSECT ............................................................................................................................... 68

Příkaz EXCEPT .................................................................................................................................... 69

Predikáty ....................................................................................................................................... 72

Predikát DISTINCT .............................................................................................................................. 72

Predikát DISTINCTROW ..................................................................................................................... 73

Predikát TOP ...................................................................................................................................... 75

Predikát LIKE ...................................................................................................................................... 79

Predikát IS NULL ................................................................................................................................ 80

Predikát BETWEEN ............................................................................................................................ 82

Predikát IN ......................................................................................................................................... 83

Predikát EXISTS .................................................................................................................................. 84

Predikáty ANY, SOME, ALL ................................................................................................................. 86

Úprava dat v tabulkách ................................................................................................................. 88

4/140


Vladimír Klaus, Jaroslav Hajný

SQL pro blbce

Příkaz INSERT ..................................................................................................................................... 88

Příkaz UPDATE ................................................................................................................................... 90

Příkaz DELETE .................................................................................................................................... 90

Import dat z CSV ................................................................................................................................ 92

Práce s tabulkami .......................................................................................................................... 98

Příkaz CREATE TABLE ......................................................................................................................... 98

Příkaz ALTER TABLE ........................................................................................................................... 99

Příkaz DROP TABLE .......................................................................................................................... 101

Příkaz CREATE INDEX ....................................................................................................................... 101

Příkaz DROP INDEX .......................................................................................................................... 103

Referenční integrita ......................................................................................................................... 103

Praktické příklady........................................................................................................................ 107

Duplicity v tabulkách ....................................................................................................................... 107

Ovlivnění pořadí ve výsledku dotazu ............................................................................................... 112

Triggery ....................................................................................................................................... 118

Co to jsou triggery ........................................................................................................................... 118

Přidání triggeru ................................................................................................................................ 118

Odstranění triggeru ......................................................................................................................... 121

Chyba v triggeru .............................................................................................................................. 123

Ostatní ........................................................................................................................................ 124

Proč zde používáme MS Access 2010? ............................................................................................ 124

Jak převést MDB databázi na novější ACCDB .................................................................................. 124

Co to je NULL ................................................................................................................................... 125

SQL příkazy nejsou case-sensitive ................................................................................................... 126

Pozor na přehození ORDER a WHERE.............................................................................................. 126

Pořadí vyhodnocení dotazu ............................................................................................................. 127

Použív ání uvozovek, apostrofů a středníků..................................................................................... 127

Co to je ID typu Automatické číslo .................................................................................................. 128

Aliasy ............................................................................................................................................... 128

Tabulky v příkladech ................................................................................................................... 131

Tabulka Zakaznici ............................................................................................................................. 132

Tabulka Produkty ............................................................................................................................. 132

5/140


Vladimír Klaus, Jaroslav Hajný

SQL pro blbce

Tabulka Objednavky ........................................................................................................................ 133

Tabulka Aritmetika .......................................................................................................................... 135

Tabulka Kontakty ............................................................................................................................. 135

Tabulka Log ...................................................................................................................................... 136

Tabulka Pomocna ............................................................................................................................ 136

Tabulka TrigonometrickeUdaje ....................................................................................................... 136

Další příručky .............................................................................................................................. 137

Již vyšlo ............................................................................................................................................ 137

Připravujeme ................................................................................................................................... 138

O autorech .................................................................................................................................. 139

AUDREY software ............................................................................................................................ 139

Chcete nám napsat? ........................................................................................................................ 140

6/140


Vladimír Klaus, Jaroslav Hajný

SQL pro blbce

Úvod

Komu je příručka určena

Všem , kteří se chtějí seznámit s jazykem SQL, ale i pro ty, kteří celý život s SQL zápasí a občas si

potřebují některé detaily nebo málo známé příkazy připomenout. Všechny příkazy a funkce jsou

názorně a velmi jednoduše vysvětlovány a předvedeny na mnoha konkrétních příkladech z praxe.

Co zde najdete

140 stránek plných snadno pochopitelného čtení

přehledné členění do 90 kapitol

180 příkladů SQL včetně komentářů

220 obrázků doprovázejících všechny příklady

vysvětlení nejpoužívanějších příkazů, funkcí, predikátů

užitečná upozornění a poznámky z praxe

odlišnosti příkazů v různých databázích

...a další řadu bonusů a článků na webu Doprovodná databáze

V příručce jsou na všech místech používané příklady, které vycházejí z existující MS Access

databáze, která je zdarma k dispozici na stránkách http://www.sqlproblbce.cz.

Databáze také obsahuje velké množství SQL dotazů k okamžitému vyzkoušení. Na webu

najdete dvě verze – klasický MDB soubor (pro MS Access 2002 a vyšší) a pak novější verzi ACCDB (pro

MS Access 2007 a vyšší).

Poděkování čtenářům

Hned na úvod chceme poděkovat, že jste si zakoupili tuto příručku. Nebo nezakoupili a přesto chcete

rychle a jednoduše podpořit autory v další práci?

Pak stačí jediné – převést 99 Kč na účet 19-4092520297/0100.

Děkujeme.

7/140


Vladimír Klaus, Jaroslav Hajný

SQL pro blbce

Co je nového

Pokud vlastníte první verzi této příručky, možná oceníte seznam zcela nových kapitol, tak i seznam

kapitol, ve kterých došlo k nějakým změnám, doplnění příkladů nebo opravám.

Zcela nové kapitoly

• Funkce FIRST a LAST

• Funkce REPLACE

• Funkce SWITCH

• Funkce CHOOSE

• Funkce LEN

• Přetypování čísla na text

• Přetypování textu na číslo

• Funkce ASC a ASCW

• Funkce CHR a CHRW

• Funkce SGN

• Trigonometrické funkce

• Aritmetické

• Příkaz INTERSECT

• Příkaz EXCEPT

• Import dat z CSV

• Příkaz CREATE INDEX

• Příkaz DROP INDEX

• Referenční integrita

• Duplicity v tabulkách

• Ovlivnění pořadí ve výsledku dotazu

• Co to jso u triggery

• Přidání triggeru

• Odstranění triggeru

• Chyba v triggeru

• Jak převést MDB databázi na novější ACCDB

• Pozor na přehození ORDER a WHERE

• Pořadí vyhodnocení dotazu

Změněné kapitoly

• Doprovodná databáze

• Příkaz ORDER BY

• Funkce COUNT

• Funkce MIN a MAX

• Funkce STDEV

• Funkce LCASE, UCASE

8/140


Vladimír Klaus, Jaroslav Hajný

SQL pro blbce

• Funkce MID

• Funkce ROUND

• Příkaz INNER JOIN

• Příka z LEFT JOIN

• Příkaz UNION a UNION ALL

• Predikát DISTINCT

• Predikát LIKE

• Predikát IN

• Predikát EXISTS

• Příkaz INSERT

• Příkaz ALTER TABLE

• Příkaz DROP TABLE

• Co to je NULL

• Aliasy

• Tabulky v příkladech

9/140


Vladimír Klaus, Jaroslav Hajný

SQL pro blbce

Základní příkazy

Příkaz SELECT

Tento základní a nejčastěji používaný příkaz slouží k získání (výběru) dat z databázové tabulky.

Začínáme slovem SELECT (vybrat), následuje „*“ (všechny sloupce), klíčové slovo FROM (odkud) a

nakonec i název tabulky.

Tímto příkazem provedeme výběr všech sloupců (*) a všech záznamů (řádek) z tabu lky Zakaznici. SELECT * FROM Zakaznici Následující příkaz také vybírá všechny záznamy, ale již pouze sloupce ID a Jmeno.

SELECT ID, Jmeno FROM Zakaznici

10/140


Vladimír Klaus, Jaroslav Hajný

SQL pro blbce

Upozornění: Takže raději ještě jednou! Hvězdička neznamená všechny řádky, ale všechny sloupce.

Všechny řádky to jsou automaticky, pokud nezadáme nějakou podmínku, viz dále příkaz WHERE.

Příkaz SELECT je možné dále vylepšovat pomocí dalších příkazů, funkcí a predikátů, což bude popsáno

v dalších částech. Příkaz ORDER BY Už tedy umíme vybírat data z tabulky příkazem SELECT, nyní se je naučíme řadit. Pokud totiž příkaz k řazení nebude použit, budou záznamy většinou v pořadí, v jakém byly do tabulky vkládány. Přesněji

řečeno – pořadí není definováno.

Takto jednoduše seřadíme všechny zákazníky dle příjmení, a to vzestupně – v tomto případě (jedná

se o textové pole) tedy od A do Z.

SELECT * FROM Zakaznici ORDER BY Prijmeni

Chceme-li řadit sestupně, použijeme klíčové slovo DESC (u vzestupného se dá zase použít ASC, ale to

není povinné). Takto získáme záznamy o prodejích, řazené dle částky od nejvyšší do nejnižší.

SELECT * FROM Objednavky ORDER BY Castka DESC

11/140


Vladimír Klaus, Jaroslav Hajný

SQL pro blbce

A dá se řadit podle více sloupců? Samozřejmě! Krásným příklad je seřazení zákazníků dle měst a pak

(dalo by se říci v rámci měst) i dle příjmení a (v rámci příjmení) také dle jména. V níže uvedeném

příkladu, kde je velmi málo dat v tabulce, je to dobře patrné pouze u Prahy 8 a Příjmení.

SELECT * FROM Zakaznici ORDER BY Mesto, Prijmeni, Jmeno Ještě jedna specialita. Vypíšeme všechny zákazníky, seřadíme dle PSČ a dále pak podle toho, jak byli přidáváni do tabulky, ale počínaje naposledy přidaným. Využijeme k tomu ID, což je údaj, který se

12/140


Vladimír Klaus, Jaroslav Hajný

SQL pro blbce

automaticky zvyšuje o 1 při každém přidání záznamu. Samozřejmě se nezvyšuje sám od sebe, ale

musíme zvyšování tomuto poli nastavit.

SELECT * FROM Zakaznici ORDER BY PSC, ID DESC Aby to nebylo tak jednoduché, je tu ještě jedna možnost, jak zadat řazení výsledku – a to pomocí relativní pozice sloupců ve výsledku. To může být velká výhoda, pokud měníte sloupce za příkazem SELECT, ale zároveň to ze stejného důvodu může způsobit neočekávané řazení – když někdo pouze změní vybírané sloupce a zapomene upravit hodnoty v ORDER BY. SELECT Nazev, Cena FROM Produkty ORDER BY 2, 1 Tento příkaz tedy odpovídá tomuto: SELECT Nazev, Cena FROM Produkty ORDER BY Cena, Nazev

Příkaz WHERE

Zatím jsme vždy vybírali všechny záznamy, nyní se je naučíme filtrovat pomocí jedné nebo více

podmínek.

Takto získáme všechny zákazníky, jejichž příjmení je Sobota.

SELECT * FROM Zakaznici WHERE Prijmeni = "Sobota" A takto získáme záznamy objednávek, které byly alespoň za 1000 (korun). SELECT * FROM Objednavky WHERE Castka >= 1000

13/140


Vladimír Klaus, Jaroslav Hajný

SQL pro blbce

A co když potřebujeme všechny objednávky pana Soboty , za které utratil více než 500 korun? Tak to

je už složitější úkol (údaje jsou ve dvou tabulkách), o tom si povíme později v části INNER JOIN.

Kombinace podmínek se provádí pomocí logických operátorů (AND, OR apod.). Takto získáme

všechny zákazníky z Prahy 8, kteří se jmenují Veselý.

SELECT * FROM Zakaznici WHERE Prijmeni = "Veselý" AND Mesto = "Praha 8"

AND = a současně, tj. musí platit obě podmínky.

Takto získáme všechny produkty , které se jmenují „Myš“ nebo „Klávesnice“.

SELECT * FROM Produkty WHERE Nazev = "Myš" OR Nazev = "Klávesnice"

OR = nebo, tj. musí platit buď jedna podmínka, nebo druhá, případně obě.

Jak vidíte, výsledkem je pouze jeden záznam, protože produkt, který by se jmenoval „Klávesnice“

vůbec neexistuje.

Malinko složitější je sestavení dotazu, kde je v podmínce uvedeno datum. Ono jde totiž o to, že se

datum v různých zemích může zapisovat různě, a proto bylo třeba vymyslet a stanovit jednotný zápis

bez ohledu na zemi nebo nějaké lokální nastavení. Tímto zápisem je #měsíc/den/rok#.

Poznámka: V jiných databázích je možné (nutné) použít místo znaku # apostrof. V MS Accessu to

nelze, protože by to pak chápal jako textový řetězec

Pomocí t ohoto dotazu získáme objednávky, které byly provedeny 14. 9. 2012.

14/140




       
Knihkupectví Knihy.ABZ.cz - online prodej | ABZ Knihy, a.s.
ABZ knihy, a.s.
 
 
 

Knihy.ABZ.cz - knihkupectví online -  © 2004-2018 - ABZ ABZ knihy, a.s. TOPlist