MySQL MariaDB

MYSQL Najít odpovídající záznamy s LIKE

MYSQL Najít odpovídající záznamy s LIKE
Operátor MySQL LIKE testuje, zda se konkrétní znakový řetězec podobá zmíněnému vzoru. Porovnáme část celkových dat přítomných v segmentu, který se nemusí přesně shodovat. Spojíme naše klíčové slovo se sekvencí informací dostupných ve sloupcích pomocí zástupného dotazu v různých kombinacích. Zástupné znaky MySQL jsou symboly, které pomáhají porovnávat obtížná kritéria s výsledky vyhledávání a byly použity v kombinaci s operátorem porovnání s názvem LIKE nebo s operátorem kontrastu s názvem NOT LIKE.

MySQL poskytuje tyto dva zástupné znaky pro konstrukci vzorů.

Otevřete nově nainstalovaný shell klienta příkazového řádku MySQL a zadejte své heslo MySQL, abyste na něm mohli pracovat.

V naší databázi jsme vytvořili novou tabulku s názvem „učitel“, která obsahuje různé záznamy, jak je uvedeno níže.

>> SELECT * FROM data.učitel;

MySQL LIKE s procentuálním zástupným znakem:

Znaménko procent funguje jinak, když se používá na různých místech s abecedami. V prvním příkladu byl znak procenta použit na posledním místě vzoru k načtení záznamu dvou sloupců „TeachName“ a „subject“, kde název subjektu začíná „C“. Po vyzkoušení níže LIKE dotazu jsme dostali níže uvedený výsledek.

>> SELECT TeachName, předmět FROM data.učitel KDE předmět jako 'C%';

Použití znaku procenta před vzorem znamená, že vzor bude odpovídat poslednímu umístění hodnoty. Hledali jsme tedy záznamy ve sloupcích „TeachName“ a „subject“, kde jméno učitele obsahující abecedu „a“ na posledním místě. Našli jsme níže uvedený výstup.

>> SELECT TeachName, předmět FROM data.teacher WHERE TeachName LIKE '% a';

Pokud chcete prohledat vzor řetězce uprostřed hodnoty, musíte umístit znak procenta na začátek a konec vzoru. Hledali jsme vzor „leží“ mezi jmény učitelů pomocí níže uvedeného dotazu.

>> SELECT TeachName, předmět FROM data.teacher WHERE TeachName LIKE '% am%';

Pomocí znaku procenta uprostřed vzoru vyhledejte odpovídající hodnotu, aniž byste věděli, co se uprostřed nachází. Zobrazili jsme všechna data týkající se jména učitele začínající na „S“ a končící na „a“.

>> SELECT TeachName, předmět FROM data.teacher WHERE TeachName LIKE 'S% a';

MySQL LIKE s podtržítkem '_' Zástupný znak:

K pochopení operátoru zástupných znaků podtržítka budeme používat novou tabulku nazvanou „záznam“. Zástupný znak podtržítka „_“ funguje jako jeden znak, pokud je umístěn na nějakém místě; proto to nemohlo fungovat pro více než dva znaky jako procento operátor.

>> SELECT * FROM data.záznam;

Načtěte shodné hodnoty a umístěte podtržítko na poslední místo vzoru. Musíte definovat přesný počet znaků v daném jménu. Jinak nebude váš dotaz fungovat. Chceme zobrazit záznamy názvu začínajícího písmenem Za, kde tři podtržítka znamenají, že poslední tři znaky tohoto jména mohou být cokoli a název by měl sestávat pouze z 5 znaků.

>> SELECT * FROM data.zaznamenejte KDE Název jako 'Za___';

Umístěte operátor podtržítka na začátek vzoru a vyhledejte hodnotu. To znamená, že počáteční znaky řetězcové hodnoty mohou být cokoli. Po použití zadaného znaku znamená znak procenta, že hodnota řetězce může mít libovolnou délku. Když tedy provedeme tento dotaz, vrátí hodnoty s různou délkou.

>> SELECT * FROM data.zaznamenejte KDE Název jako '___ a%';

V níže uvedeném dotazu jsme ve středu vzoru používali podtržítko se zástupnými znaky. To znamená, že znak před poslední abecedou může být cokoli, ale poslední abeceda musí být „a“. Znak procenta ukazuje, že řetězec může mít libovolnou délku.

>> SELECT * FROM data.zaznamenejte KDE Název jako '% _a';

Při hledání ve sloupci Země použijeme podtržítko na začátku a v jakémkoli bodě vzoru. To ukazuje, že druhý znak vzoru musí být 'u'.

>> SELECT * FROM data.zaznamenat KDE Země jako '_u_%';

MySQL LIKE s NOT operátorem:

MySQL vám pomůže sloučit operátor NOT s operátorem LIKE a identifikovat řetězec, který neodpovídá ani konkrétní sekvenci. Hledali jsme záznamy sloupců: „Název“, „Město“ a „Země“, kde název země musí mít v libovolném prostředním umístění ve svém řetězci abecedu „i“. Pro tento konkrétní dotaz máme tři výsledky.

>> SELECT * FROM data.zaznamenejte, KDE Země NEMÁ RÁD '% i%;

MySQL LIKE s únikovými znaky:

Sekvence, kterou byste chtěli najít, často zahrnuje zástupné znaky, např.G., 10, 20 atd. V tomto scénáři bychom mohli pomocí klauzule ESCAPE definovat únikový symbol tak, aby byl MySQL se zástupným znakem zacházeno jako s doslovným znakem. Pokud výslovně nezmiňujete znak úniku, je standardním operátorem úniku zpětné lomítko '\'. Vyhledejme hodnoty v tabulce, které mají na konci názvů měst „_20“. Před znak „_20“ musíte přidat znak „\“ jako zástupný znak, protože podtržítko je samo o sobě zástupným znakem. Zobrazuje údaje o městech, která mají na konci svých jmen „_20“. Znak procenta znamená, že začátek jména může mít libovolnou délku a může mít libovolný znak.

>> SELECT * FROM data.zaznamenejte, KDE MĚSTO JAKO '% \ _ 20';

V níže uvedeném příkladu se znak '%' na začátku a na konci používá jako zástupný operátor, jak se používá dříve. Druhý poslední znak '%' je vzor, ​​který má být prohledán, a '\' je zde znak úniku.

>> SELECT * FROM data.zaznamenejte, KDE MĚSTO JAKO '% \ %%';

Znak '%' je zástupný znak, '\' je znak escape a poslední znak '/' je vzor, ​​který se má hledat na poslední pozici jmen zde.

>> SELECT * FROM data.zaznamenejte, KDE MĚSTO JAKO '% \ /';

Závěr:

Udělali jsme s Like Clause & Wildcards, což jsou důležité nástroje, které pomáhají hledat informace, které odpovídají komplikovaným vzorům. Doufám, že vám tento průvodce pomohl dosáhnout vašeho skutečného cíle naučit se LIKE operátory a operátory se zástupnými znaky.

Hry Vulkan pro uživatele Linuxu
Vulkan pro uživatele Linuxu
S každou novou generací grafických karet vidíme, že vývojáři her posouvají hranice grafické věrnosti a přibližují se k fotorealismu. Ale navzdory vešk...
Hry OpenTTD vs Simutrans
OpenTTD vs Simutrans
Vytvoření vlastní simulace dopravy může být zábavné, uvolňující a mimořádně lákavé. Proto se musíte ujistit, že vyzkoušíte co nejvíce her, abyste našl...
Hry Výukový program OpenTTD
Výukový program OpenTTD
OpenTTD je jednou z nejpopulárnějších her pro obchodní simulaci. V této hře musíte vytvořit skvělé dopravní podnikání. Začnete však na začátku kolem r...