SQL IN operátor – Více hodnot v podmínce

IN operátor v t-sql použijeme v případě, kdy potřebujeme ve WHERE klauzuli vymezit podmínku současně na několik diskrétních hodnot. Je podobný s operátorem BETWEEN, ale je tam jeden velký rozdíl.

Rozdíl mezi IN a BETWEEN

  • BETWEEN použijeme k definování rozsahu, který je spojitý
  • IN používáme k definování hodnot, které jsou diskrétní – nespojité

Syntaxe IN operátoru v SQL

SELECT Datum
FROM dbo.Tabulka
WHERE Datum IN ('2017-05-01', '2017-05-03')

Jak vidíme, za operátorem následuje závorka a v ní jsou hodnoty oddělené čárkou. Podobným způsobem můžeme data vymezit i negativně s použítím prefixu “NOT IN”.

Dotaz výše je ekvivalentní s dotazem:

SELECT Datum
FROM dbo.Tabulka
WHERE Datum = '2017-05-01' OR Datum = '2017-05-03'

Operátor IN ale udržuje kód přehlednější

5/5 - (1 vote)
Rubrika: SQL operátory

O Ing. Jan Zedníček - Data Engineer & Controlling

Jmenuji se Honza Zedníček a působím jako data engineer freelancer. Během cca 10 let jsem zde shromáždil přes 600 IT case studies, průvodců, návodů a tipů určených zejména odborné veřejnosti, studentům a zájemcům o informace z oblastí Data Engineeringu, korporátních financí a reportingu. Zaměřuji se především na Microsoft technologie (on-prem i cloud) a různé synergické efekty v rámci jejich produktového portfolia pro dataře a finanční profesionály. Věnuji se také dalším platformám a významným hráčům z oblasti open source technologií. 🔥 Pokud vám tento článek pomohl, ocením referenci na vašem webu nebo zmínku v komunitě. A mám pro vás ještě tip: řešíte-li nějaký zapeklitý Excel problém, přihlašte se do naší Excel Facebook skupiny (2.4k+ členů), kde si pomáháme Excel CZ/SK diskuse ».

Leave a Reply

Your email address will not be published. Required fields are marked *