Archív rubriky: SQL návody

T-SQL je jazyk, který se používá k práci s databázemi na platformě MS SQL Server.  V této sekci naleznete řadu článků a návodů na tématiku pro začátečníky. Pokud se chcete T-SQL naučit nebo si chcete něco zopakovat, koukněte na příslušný SQL tutoriál. Snažím se o to, aby každý článek obsahoval i příklad použítí a ukázku kódu

Pro začátečníky – jak se postupně seznámit s T-SQL

Níže najdete základní chronologickou osnovu, kterou bych doporučil následovat pro osvojení SQLka. Při studiu používejte pro doplnění a rozšíření znalostí i jiné zdroje. Pokud se těmito tématy buď zde na webu nebo jinde prokoušete a osvojíte si je, dá vám to dobrý základ pro efektivní práci s databázemi, řešit automatizace, BI, reporting, aplikace a podobně. Můžete položit základy

Před studiem doporučuju nainstalovat (v tomto pořadí) potřebné nástroje abyste si mohli nově nabyté znalosti rovnou zkoušet.

  • SQL Server (Express nebo Developer)
  • SQL Server Management studio
  • AdventureWorks databázi (cvičná databáze microsoftu)

1) Úvod do T-SQL – seznámení, základní orientace

Po prostudování těchto článků se seznámíme se základní syntaxí jazyka T-SQL sestavíme si jednoduché SQL dotazy.

2) Základní SQL klauzule – základní konstrukční prvky SQL dotazu

Po prostudování těchto článků budete umět napsat samostatně jednoduché dotazovací skripty do 1 tabulky

3) Spojování tabulek (FROM) – joinování

Typicky se v relační databázi nepřipojujeme pouze k 1 tabulce, ale několika (v klauzuli FROM). Existuje několik typů spojení mezi tabulkami. Po prostudování těchto článků pochopíte rozdíl mezi jednotlivými typy joinů a budete schopni psát složitější skripty s pomocí spojení více tabulek. V praxi je pochopení a bezchybná volba joinů v různých situacích asi největší problém při osvojení SQL jazyka (přehoupnutí od věčného začátečníka k mírně pokročilému)

  • INNER JOIN – společné záznamy z obou tabulek na základě join kritéria
  • LEFT JOIN – vše z levé tabulky a shoda u pravé tabulky na základě join kritéria
  • RIGHT JOIN – vše z pravé tabulky a shoda z levé tabulky na základě join kritéria
  • FULL JOIN – vše z obou tabulek
  • CROSS JOIN – kartézský join všechny kombinace záznamů v obou tabulkách

4) Seznámení s SQL funkcemi (kategorie SQL funkce)

Po pochopení základní konstrukce jazyka se můžeme podívat, jakým způsobem můžeme s daty pracovat (stejně jako třeba v Excelu) prostřednictvím funkcí. Ty nejčastěji používáme v klauzuli SELECT. Níže pár příkladů těch nejpoužívanějších funkcí, další najdete v příslušné kategorii na webu.

5) DDL (vytváření, mazání, čištění tabulek) a DML (změna záznamů v tabulkách)

Do teď jsme se zabývali tzv. DQL (data query language) – dotazováním. Po pochopení jak se do tabulek dotazovat se můžeme vrhnout do samotného zakládání tabulek a příkazů, které záznamy v tabulce nějakým způsobem mění nebo rovnou mažou.

6) Napojení dat do Excelu nebo reporting platformy

Pokud umíme data v databázi připravit a efektivně se do nich dotazovat, můžeme si výsledek dotazů natáhnout třeba do Excelu nebo Power BI

SQL FULL JOIN – Spojování tabulek v SQL s vysvětlením přes Excel

Většinou si při práci s SQL databází nevystačíme pouze s 1 tabulkou. Některé hodnoty se nacházejí v jedné tabulce a další hodnoty v druhé = v rozdělení informací do mnoha tabulek , které jsou mezi sebou propojeny (přes klíče) spočívá podstata relačních databází. Existují 5 základních druhů joinů: INNER JOIN, LEFT JOIN, RIGHT JOIN, CROSS… Čtěte více »

SQL RIGHT OUTER JOIN – Spojování tabulek v SQL s vysvětlením přes Excel

Většinou si při práci s SQL databází nevystačíme pouze s 1 tabulkou. Některé hodnoty se nacházejí v jedné tabulce a další hodnoty v druhé = v rozdělení informací do mnoha tabulek , které jsou mezi sebou propojeny (přes klíče) spočívá podstata relačních databází. Existují 5 základních druhů joinů: INNER JOIN, LEFT JOIN, RIGHT JOIN (aktuální… Čtěte více »

SQL LEFT OUTER JOIN – Spojování tabulek v SQL s vysvětlením přes Excel

Většinou si při práci s SQL databází nevystačíme pouze s 1 tabulkou. Některé hodnoty se nacházejí v jedné tabulce a další hodnoty v druhé = v rozdělení informací do mnoha tabulek , které jsou mezi sebou propojeny (přes klíče) spočívá podstata relačních databází. Existují 5 základních druhů joinů: INNER JOIN, LEFT JOIN (aktuální článek), RIGHT… Čtěte více »

SQL INNER JOIN – Spojování tabulek v SQL s vysvětlením přes Excel

Většinou si při práci s SQL databází nevystačíme pouze s 1 tabulkou. Některé hodnoty se nacházejí v jedné tabulce a další hodnoty v druhé = v rozdělení informací do mnoha tabulek , které jsou mezi sebou propojeny (přes klíče) spočívá podstata relačních databází. Dříve nebo později se budeme muset naučit tabulky spojovat. Tak pojďme na… Čtěte více »

SQL SELECT DISTINCT – Odstranění duplicit z tabulky = jedinečné hodnoty

SELECT DISTINCT příkaz slouží ke zobrazení jedinečných záznamů v tabulce. Použití je široké, zejména odstranění duplicit v záznamech při různých pohledech na data. Tip: Pokud vyjmenujeme více než 1 sloupec, tak DISTINCT vrací jedinečné kombinace vyjmenovaných sloupců Syntaxe SELECT DISTINCT Syntaxe je jednoduchá, stačí přidat slovo “DISTINCT” za SELECT klauzuli. SELECT DISTINCT [Sloupec1], [Sloupec2] FROM… Čtěte více »

SQL Cyklus (Loop) – WHILE nebo rekurzivní CTE

Jako Loop můžeme označit opakované volání části kódu s různými parametry a většinou je spojen s nějakou DML operací typu INSERT nebo UPDATE. Cyklus voláme po předem stanovený počet opakování a můžeme ho v SQL sestavit několika různými způsoby. Na příkladu s kalendářem si ukážeme všechny způsoby. Jak na Generování kalendáře v SQL pomocí cyklu?… Čtěte více »

SQL INSERT – Návod -přidat řádky do tabulky, nejčasnější chyby

Příkaz INSERT volíme v situaci, kdy potřebujeme vložit záznamy do tabulky. Vložení řádků můžeme udělat několika způsoby (podrobněji je popisuji dále) kdy: Vkládáme hodnoty, které fixně vyjmenujeme (INSERT INTO … VALUES(hodnota1, hodnota2, …)) Vkládáme záznamy do tabulky pomocí skriptu (SELECT – vybíráme hodnoty z tabulky) v kombinaci s INTO “cílová tabulka”). Tady se prakticky jedná o… Čtěte více »