Nastavujte Mergado efektivně #3: Operátor IN je lepší jak OR

Článek zveřejněn 09. 07. 2019
| 2 minuty čtení

Jeden z velmi častých úkonů v Mergadu je vyhledávání produktů, které uživatel spojí do skupiny, s níž potřebuje dále pracovat. Intuitivně to jde pomocí libovolného množství podmínek OR. My pro vás máme efektivnější způsob. S jeho pomocí nezpůsobíte nápor na naši databázi a nezpomalíte výkon Mergada.

Využívejte operátor IN

I když je způsob hledání položek pomocí podmínek OR (česky “nebo”) naprosto v pořádku, při jejich větším počtu (např. při hledání produktových ID jich může být několik desítek nebo dokonce stovek) bude takový dotaz dlouho trvat.

[PARAM|Velikost] = “L” OR [PARAM|Velikost] = “XL”

Použití operátoru OR např. při hledání triček s velikostí L nebo XL je naprosto v pořádku.

[PARAM|Velikost] IN (“XS”;“S”;“M”;“L”;“XL”;“2XL”;“3XL”;“4XL”;“5XL”)

Použití operátoru IN při hledání triček s více velikostmi je výhodnější, než použití OR.

Jiným příkladem pro použití operátoru IN může být vyhledání produktů podle jejich ID, kde se mohou objevit desítky či stovky hodnot. V těchto případech už bychom neměli “OR” používat vůbec a hledat pouze s operátorem IN.

Ukázka vyhledávání v Mergadu na stránce Produkty, kde je možné vyhledávat výčtem v jednoduchém i rozšířeném vyhledávání:

V Mergadu jde kromě operátoru IN použít i negaci NOT IN (není obsaženo ve výčtu či nějaké množině). Pokud bychom tedy nechtěli právě tyto produkty a ostatní ano, hledání by proběhlo pomocí NOT IN:

ITEM_ID NOT IN (“1”; “5”; “30”; “50”)

Používejte vyhledávání pomocí výčtu (množin) za použití operátoru IN. Data se vám přegenerují rychleji a výkon Mergada nevytížíte ani stovkami takto zapsaných hodnot.

Mohlo by vás zajímat:

Napsal / Lukáš Horák / 09. 07. 2019

Lukáš se v MERGADU stará o většinu komunikace v češtině. Prostřednictvím blogu, e‑mailu a sociálních sítí pravidelně zásobuje čtenáře aktualitami z e‑commerce a novinkami a tipy z MERGADA. Pokud zrovna není copywriterem, užívá si prosté věci jako badminton, výlety mezi utajené skvosty osmdesátkové hudby a plody moře podávané s červeným vínem.

Komentáře

Já teda nevím, ale nechybí vám tam něco? Mě to nějak nedává smysl.
Já přece neznám ID-čka všech položek s velikostí L a XL, tak jak je tam mám vypsat?
Tam by snad měl být v tom “IN” spíš nějaký pod-dotaz, který vrátí seznam těch ID-ček ne?
Děkuji za ujasnění.

Vachler / 09. 07. 2019 - 13:51

Mě přijde, že má Lukáš ve článku obrázek s jiným příkladem, než o čem píše v textu. Podle mne by na obrázku mělo být:

 

[PARAM|Velikost] IN (“L”;“XL”)

 

Tak to kapku mate.

Petr Parimucha (admin) / 10. 07. 2019 - 11:02

A já si říkal, že mám ty pravidla s OR nějak dlouhé, díky za tip. Náhled je již aktuální?

Marek / 14. 07. 2019 - 21:25

Přidat nový komentář

Obsah tohoto pole je soukromý a nebude veřejně zobrazen.
Přidáním komentáře souhlasíte se zpracováním osobních údajů.