
SQL — LIKE
Znáte všechny taje, které SQL operátorLIKE nabízí? Vsadíme se, že o některých možná ani nevíte! 😉
Všechny příklady z tohoto návodu si můžete vyzkoušet on-line. Pro naše účely totiž bohatě postačí on-line databáze SQL Fiddle. Název v tomto případě přesně označuje účel. Fiddle totiž znamená hrát si.
Vytvořte si tabulku s daty

Zkopírujte následující kód a vložte do levé části SQL Fiddle. Pak klikněte na tlačítko Build Schema. Vytvoří se tabulka i s několika testovacími řádky.
CREATE TABLE students
(
id INT,
first_name VARCHAR(50),
last_name VARCHAR(50)
);
INSERT INTO students VALUES (1, 'Jana', 'Dvořáková');
INSERT INTO students VALUES (2, 'Steve', 'Jobs');
INSERT INTO students VALUES (3, 'Jan', 'Novák');
INSERT INTO students VALUES (4, 'John', 'Lennon');
INSERT INTO students VALUES (5, 'Bill', 'Gates');
INSERT INTO students VALUES (6, 'Paul', 'McCartney');
INSERT INTO students VALUES (7, 'JAN_ADAM', 'V.');
INSERT INTO students VALUES (8, 'XXX', 'yk%m*6%_a');
Vlastní SQL příkazy potom budete psát do pravé části a spouštět tlačítkem Run SQL.
Syntaxe
Syntaxe operátoru LIKE není složitá.
% | Procento nahrazuje více znaků nebo také žádný znak. |
_ | Podtržítko nahrazuje jeden libovolný znak. |
\ | Zpětné lomítko je tzv. Escape znak. Díky němu můžeme vyhledávat v řetězci znaky `%` a `_`. |
Příklady
Křestní jména začínající na "J"
SELECT * FROM students
WHERE first_name LIKE 'J%';
| id | first_name | last_name |
|----|------------|-----------|
| 1 | Jana | Dvořáková |
| 3 | Jan | Novák |
| 4 | John | Lennon |
| 7 | JAN_ADAM | V. |
Příjmení, která obsahují "a"
SELECT * FROM students
WHERE last_name LIKE '%a%';
| id | first_name | last_name |
|----|------------|-----------|
| 5 | Bill | Gates |
| 6 | Paul | McCartney |
| 8 | XXX | yk%m*6%_a |
Příjmení, která neobsahují "a"
SELECT * FROM students
WHERE last_name NOT LIKE '%a%';
| id | first_name | last_name |
|----|------------|-----------|
| 1 | Jana | Dvořáková |
| 2 | Steve | Jobs |
| 3 | Jan | Novák |
| 4 | John | Lennon |
| 7 | JAN_ADAM | V. |
Křestní jména, které mají jako 2. písmeno "a"
SELECT * FROM students
WHERE first_name LIKE '_a%';
| id | first_name | last_name |
|----|------------|-----------|
| 1 | Jana | Dvořáková |
| 3 | Jan | Novák |
| 6 | Paul | McCartney |
Příjmení, která mají délku 5 znaků
SELECT * FROM students
WHERE last_name LIKE '_____';
| id | first_name | last_name |
|----|------------|-----------|
| 3 | Jan | Novák |
| 5 | Bill | Gates |
Křestní jména nebo příjmení, která obsahují podtržítko "_"
SELECT * FROM students
WHERE first_name LIKE '%\_%'
OR last_name LIKE '%\_%';
| id | first_name | last_name |
|----|------------|-----------|
| 7 | JAN_ADAM | V. |
| 8 | XXX | yk%m*6%_a |
Příjmení, která obsahují "%"
SELECT * FROM students
WHERE last_name LIKE '%\%%';
| id | first_name | last_name |
|----|------------|-----------|
| 8 | XXX | yk%m*6%_a |
Poznámka: U některých databází, např. SQL Server nebo Oracle, je nutné uvést klíčové slovo ESCAPE.
SELECT * FROM students
WHERE last_name LIKE '%\%%' ESCAPE '\';
Líbil se vám článek? Sdílejte ho s ostatními nebo nám napište něco hezkého. Děkujeme!
Mohlo by vás zajímat
Blog

Přestaňte obviňovat model, začněte klást lepší otázky
To, jaký model si vyberete, není tak důležité jako to, jak se ho zeptáte. Nedávná …

Brzdí vás Excel? Vlastní datové aplikace rychle a bez programátorů.
Pokud pracujete s daty, velká část vaší práce se odehrává v Excelu. Ať už děláte …

Jak vytváříme jednoúčelové aplikace s pomocí AI
Vytváříme malé nástroje. Jeden nástroj, jeden úkol. Tento článek popisuje jak to děláme. A co …
Kurzy

Data Analytics Pass
Staňte se datovým analytikem. Výhodný balík 7 kurzů od profíků z oboru. SQL, Python, Pandas, R, Tableau, Power BI a Strojové učení.

SQL pro každý den
Jak si užít SQL a nezabloudit v kódu

Programování ve VBA
Naučte se automatizovat rutinní činnosti v Excelu pomocí VBA.

Vizualizace dat v Canvě
Naučte se jednoduše vizualizovat data v Canvě. Tento mikro kurz vás provede základy tvorby přehledných grafů.

Excelentní Triky 1
Naučte se používat často opakované postupy v aplikaci Excel efektivněji a rychleji.

IT je taky pro holky!
Tvůj inspirativní průvodce světem technologií
