Ing. Vladimír Šubr

Ing. Vladimír Šubr


Jsem profesionál v digitálním marketingu. Od roku 2009 řeším SEM, UX, webovou analytiku. Hledám souvislosti a odkrývám podstatné.

March 2024
M T W T F S S
 123
45678910
11121314151617
18192021222324
25262728293031

Categories


SELECT DISTINCT – Ukáže pouze unikátní hodnoty

Ing. Vladimír ŠubrIng. Vladimír Šubr

Sloupce v databázových tabulkách mohou obsahovat mnoho stejných – duplicitních údajů, se stejnou hodnotou. Pojďme se podívat, jak rozlišit tyto duplicitní sloupce pomocí SELECT DISTINCT. Tyto sloupce mají zpravidla nějaký jednotný jmenovatel, který odráží vazbu ze skutečného světa.

Proč řešit + příklad z praxe

Například v databázi internetového obchodu, když zákazník provádí různé nákupy, tak jeho jméno se bude stále opakovat. Nás ale může zajímat kolik máme v daný moment unikátních zákazníků. K tomu slouží rozšíření SELECT statementu o DISTINCT.

Syntaxe je jednoduchá:

SELECT DISTINCT jmeno_zakaznika,
FROM tabulka_transakce;

Tento jednoduchý dotaz může být velice užitečný a mnoho odhalit. Rázem nám ukáže, že sice například máme tisíce objednávek, ale realizuje je třeba jenom pár zákazníků. Našemu byznysu se daří, ale ztráta každého zákazníka může tvrdě bolet.

Pokud by nám na tomto příkladu vracely SELECT a SELECT DISTINC podobný počet řádků, tak se naopak bát nemusí – náš byznys mnoho zákazníků a ztráta jednoho nás tolik bolet nebude. Na druhou stranu nám to říká, že máme jasnou příležitost zaměřit se naopak na retenci – potřebujeme získat stálé zákazníky.

Počítáme řádky

A co pokud chceme rovnou spočítat kolik máme unikátních hodnot? V našem případě zákazníků.

K tomu použijeme:

SELECT COUNT (DISTINCT jmeno_zakaznika)
FROM tabulka_transakce

Teď můžeme lehce porovnávat celkový počet řádků a počet unikátních řádků podle námi vybraných sloupců. Jednoduchý příkaz, které nám může říci více, než se na první pohled zdá.

Analytik na volné noze se zaměřením na SEO, digitální marketing a webové technologie. Hledám souvislosti a odkrývám podstatné.

Comments 0
There are currently no comments.