SQL není raketová věda, ale užitečný nástroj pro rychlou a efektivní práci s daty

Dolování odpovědí z dat uchovávaných v tabulkách Excelu se občas rovná hledání jehly v kupce sena poslepu. Víte, co chcete, ale v průběhu ztrácíte spoustu času a mnohdy vaše snaha vyústí v „error“.

Základy jazyka SQL v SQL Serveru – SQL dotazování, ICT Pro

Existují ale i příjemnější alternativy, jak elegantně a rychle zpracovávat objemná data na užitečné informace. Znáte už SQL?

SQL, neboli Structured Query Language, je neprocedurální programovací jazyk. Au. Laika ze čtení této věty nejspíše právě zabolely oči. Pro útěchu se však nejedná o klasický programovací jazyk pro samostatný vývoj aplikací. Na rozdíl od náročného programování může SQL už během několika dní pochopit i naprostý začátečník (má-li vůli či správného učitele). Ve zkratce jde o nástroj, který pomocí jasně dané struktury (syntaxe) komunikuje s databázovým úložištěm a odtud z objemného množství dat generuje konkrétní požadované výstupy. Ve výsledku za pár vteřin získáte z množství tabulek o tisících řádcích jednu přehlednou pouze s výčtem požadovaných informací, které si můžete dále upravovat.

Podobným zjednodušeným úvodem zahájil březnový běh dvoudenního kurzu „Základy jazyka SQL v SQL Serveru – SQL dotazování“  jeho lektor - Lukáš Luska. Kurz v pravidelných intervalech pořádá vzdělávací společnost ICT Pro. Jeho cílem je především naučit účastníky chápat základní logiku a termíny jazyka, díky kterým se pak naučí v programu psát efektivní dotazy pomocí kritérií a propojovat správné záznamy z více tabulek do jediného reportu. Kurz je určen především analytikům, manažerům a vývojářům a komukoliv, kdo pracuje s daty či velkými daty (Big Data) a o SQL má žádné či minimální povědomí.

Základy SQL už za dva dny

Lukáš Luska, ač zkušený programátor, se nám jal lidským jazykem a s velmi otevřeným přístupem vysvětlovat klíčové termíny, které nám dle jeho slov mají usnadnit chápání struktury jazyka SQL. Popřípadě, coby manažerům, pomoci ve vzájemné komunikaci s kovanými analytiky a lidmi, kteří s databázemi a SQL pracují na pokročilé úrovni.

Dozvěděli jsme se, že pro práci s daty je v prvé řadě důležité jejich zařazení mezi konkrétní datové typy. Ty rozlišujeme celkem čtyři - číselné, datumové, textové a bitové. Pochopení těchto kategorií je klíčové nejen pro zjištění, co který záznam v tabulce vlastně obsahuje, ale zejména pro následné použití možného spektra funkcí pro daný typ dat (například možnost pracovat s měnami u číselných typů nebo s mezinárodními časy u datumových typů apod.). Mimo jiné určení vhodných datových typů zároveň pomáhá k úspoře místa na firemních serverech, což je pro řadu z těchto společností, jako jsou například banky, mobilní operátoři a další instituce zpracovávající objemná data, klíčové.

Lukáš nám zároveň udělal pořádek v základním rozdělení jazyka SQL, kde nás seznámil mimo jiné s klíčovým příkazem pro manipulaci s daty „SELECT“ nebo rozšiřujícími klauzulemi, které blíže specifikují povahu operace, kterou s daty chceme dělat (například vymezit tabulku, odkud z data získáváme - „FROM“, filtrovat data podle kritérií – „WHERE“, seskupit – „GROUP BY“ apod.). Tyto příkazy mají zároveň v jazyce SQL svou vlastní posloupnost využití. Teorii jsme následně ihned v průběhu kurzu převáděli do praxe při vlastním nácviku v programu SQL Server Management Studio.

Dalo by se říci, že přístup lektora k výuce a struktura probíraných témat kurzu apeluje na zkušenosti účastníků i přirozenou dedukci. Pokud se stane, že jako laik v tématu tápete, Lukáš pohotově nabízí přirovnání, a to nejlépe právě k již zmiňovanému Excelu: „Excel dnes profesně stále využívá spousta lidí, ačkoliv by pro ně mnohdy bylo efektivnější naučit se právě SQL. Pokud se některý z nich stane účastníkem kurzu, pak samozřejmě nechce poslouchat poučky, které si může přečíst někde na internetu, ale chce získat jasnou představu, jak může tento nástroj používat pro svou práci. Pro lepší představu a zjednodušení proto často využívám připodobnění k práci s Excelem, která je pro něj uchopitelnější díky jeho vlastní předchozí zkušenosti,“ potvrdil mi lektor.

Osobně musím přiznat, že jako nezkušenému člověku, který o problematice do té doby věděl jen „poučky z internetu“, mi přirovnání právě k funkcionalitám Excelu pomáhala. Ačkoliv jsem se často spíše chytala stébel, neboť skutečně nejsem „datař“ ani vývojář, občas se mi i tu jehlu v kupce sena - v podobě správně zadané procedury (představte si makra v Excelu) – skutečně podařilo odhalit i bez nápovědy. Nebudu předstírat, ale cítila jsem se v daný moment jako bych vyběhla na Everest bez kyslíkové masky.

Plusové body za sebe zároveň přidávám lektorovi za průběžné, avšak nenásilné, testování znalostí, kterými si po každém tematickém bloku ověřoval, zda skutečně problematiku chápeme a umíme ji vysvětlit vlastními slovy.

Příjemným zpestřením celého kurzu pro mne pak bylo zejména analytické „Google okénko“ nad rámec kurzu. Lukáš Luska nás naučil některé užitečné vyhledávací příkazy v internetovém vyhledávači, které nám pomohou získávat požadované informace rychleji a bez nadbytečného balastu.

Zajímalo mne, co Lukáše vůbec přivedlo na myšlenku průběžně účastníky testovat a zároveň je seznámit i s tématy mimo vlastní problematiku kurzu, a on mi na můj návazný dotaz odpověděl: Osobně si přeji, aby si každý účastník z kurzu vždy odnesl něco nového, a to i v případě, že je pro něj školení spíše nástavbou stávajících znalostí. Zároveň mám sám zkušenost se školeními typu Youtube live' kdy od lektora sice dostanete spousty nových informací, ale ve výsledku si nic pořádně nejste schopni zapamatovat a porozumět tomu. Pro mě je důležité, aby účastník odcházel na konci dne z kurzu s úsměvem a chtěl další den pokračovat. Jak řekl jeden významný člověk: ‚Pokud něco neumíš vysvětlit jednoduše, tak jsi tomu neporozuměl.'. Tou osobností byl Albert Einstein a já se jeho slovy snažím řídit, a proto počítám s tím, že kdokoliv na tento kurz přijde, v životě o tématu neslyšel a během dvou dní může odejít s pocitem, že tématu rozumí.“

SQL má dnes poměrně široké možnosti využití nejen pro analytiky, ale například také pro webové specialisty a vývojáře tvořící internetové stránky nebo webové aplikace. V současné době navíc už většina firemních informačních systémů využívá pro uchování svých dat relační databáze, s nimiž se pracuje právě v jazyce SQL. Minimálně z tohoto důvodu se tudíž vyplatí znát alespoň základní pojmy a možnosti, jaké informace lze z dat získat, ačkoliv nejste přímo v roli zpracovatele dat, ale zadavatele požadavků na konkrétní analýzy.

 

Zjistěte si více o kurzu „Základy jazyka SQL v SQL Serveru – SQL dotazování“ od ICT Pro.