PostgreSQL LIKE, ne jako, zástupné znaky (%, _) příklady

Obsah:

Anonim

Operátor PostgreSQL LIKE nám pomáhá porovnávat textové hodnoty se vzory pomocí zástupných znaků. Je možné přiřadit vyhledávací výraz k výrazu vzoru.

Pokud dojde ke shodě, vrátí operátor LIKE hodnotu true. S pomocí operátoru LIKE je možné použít zástupné znaky v klauzuli WHERE příkazů SELECT, UPDATE, INSERT nebo DELETE.

V tomto výukovém programu PostgreSQL se naučíte následující:

  • Divoké karty
  • Syntax
  • Používání zástupných znaků%
  • Použití _ zástupného znaku
  • Používání operátoru NOT
  • Pomocí pgAdmin

Divoké karty

Existují pouze dva zástupné znaky, které lze použít společně s

  • Znak procenta (%)
  • Podtržítko (_)

Znak procenta (%) představuje nulu, jeden nebo mnoho znaků nebo čísel.

Zástupný znak podtržítka (_) slouží k reprezentaci jednoho znaku nebo čísla. Tyto symboly lze také kombinovat. Pokud se operátor LIKE nepoužívá společně s těmito dvěma znaky, bude se chovat jako operátor rovná se.

Syntax

Zde je syntaxe operátoru LIKE:

expression LIKE pattern [ ESCAPE 'escape-character' ]

Výraz je znakový výraz jako sloupec nebo pole.

Vzor je znakový výraz s odpovídajícím vzorem.

Escape-znak je volitelný parametr. Umožňuje testování doslovných instancí zástupných znaků, například% a _. Pokud není zadán, bude jako znak escape použito \.

Používání zástupných znaků%

Jak jsme uvedli dříve, znak% odpovídá nule, jednomu nebo více znakům nebo číslům. Zvažte následující tabulku:

Rezervovat:

Chceme knihu, jejíž název je jako „Lear

… “Abychom dosáhli tohoto výsledku, můžeme spustit následující příkaz:
SELECT *FROMBookWHEREname LIKE 'Lear%';

Tím se vrátí následující:

Kniha byla nalezena.

Vyhledejme knihu „podle“ v jejím názvu:

SELECT *FROMBookWHEREname LIKE '%by%';

Tím se vrátí následující:

Použití _ zástupného znaku

Jak jsme uvedli dříve, znaménko _ představuje jeden znak nebo číslo. Lze jej použít, jak je znázorněno níže:

SELECT *FROMBookWHEREname LIKE '_earn%';

Tím se vrátí následující:

Zde je další příklad:

SELECT *FROMBookWHEREname LIKE '%Beginner_';

Tím se vrátí následující:

Používání operátoru NOT

Když je operátor LIKE kombinován s operátorem NOT, je vrácen jakýkoli řádek, který neodpovídá vzoru hledání. Chcete-li například zobrazit knihu, jejíž název nezačíná na „příspěvek“, můžeme spustit následující příkaz:

SELECT *FROMBookWHEREname NOT LIKE 'Post%';

Tím se vrátí následující:

Pouze jedna kniha splnila podmínku hledání. Podívejme se na seznam jmen knih, které nemají slovo „Made“:

SELECT *FROMBookWHEREname NOT LIKE '%Made%';

Tím se vrátí následující:

3 řádky splnily podmínku hledání.

Pomocí pgAdmin

Nyní se podívejme, jak lze akce provádět pomocí pgAdmin.

Používání zástupných znaků%

Krok 1) Přihlaste se ke svému účtu pgAdmin.

Krok 2)

  1. Na navigačním panelu vlevo klikněte na Databáze.
  2. Klikněte na ukázku.

Krok 3) Zadejte dotaz do editoru dotazů:

SELECT *FROMBookWHEREname LIKE 'Lear%';

Krok 4) Klikněte na tlačítko Provést.

Mělo by vrátit následující:

Hledání knihy „podle“ v jejím názvu:

Krok 1) Do editoru dotazů zadejte následující příkaz:

SELECT *FROMBookWHEREname LIKE '%by%';

Krok 2) Klikněte na tlačítko Provést.

Mělo by vrátit následující:

Použití _ zástupného znaku

Krok 1) Přihlaste se ke svému účtu pgAdmin.

Krok 2)

  1. Na navigačním panelu vlevo klikněte na Databáze.
  2. Klikněte na ukázku.

Krok 3) Zadejte dotaz do editoru dotazů:

SELECT *FROMBookWHEREname LIKE '_earn%';

Krok 4) Klikněte na tlačítko Provést.

Mělo by vrátit následující:

Krok 5) Spuštění druhého příkladu:

  1. Zadejte následující dotaz v editoru dotazů:
    SELECT *FROMBookWHEREname LIKE '%Beginner_';
  2. Klikněte na tlačítko Provést.

Mělo by vrátit následující:

Používání operátoru NOT

Krok 1) Přihlaste se ke svému účtu pgAdmin.

Krok 2)

  1. Na navigačním panelu vlevo klikněte na Databáze.
  2. Klikněte na ukázku.

Krok 3) Chcete-li zobrazit všechny knihy, jejichž názvy nezačínají slovem „Odeslat“, zadejte dotaz v editoru dotazů:

SELECT *FROMBookWHEREname NOT LIKE 'Post%';

Krok 4) Klikněte na tlačítko Provést.

Mělo by vrátit následující:

Seznam knih, jejichž názvy nemají slovo „Made“, zobrazíte takto:

Krok 1) Zadejte následující dotaz do editoru dotazů:

SELECT *FROMBookWHEREname NOT LIKE '%Made%';

Krok 2) Klikněte na tlačítko Provést.

Mělo by vrátit následující:

Souhrn:

  • PostgreSQL LIKE se používá při porovnávání textových hodnot se vzory pomocí zástupných znaků.
  • Klauzule LIKE nám umožňuje používat zástupné znaky v příkazech SELECT, UPDATE, INSERT nebo DELETE.
  • Zástupný znak% odpovídá jedné nebo více hodnotám. Hodnoty mohou být čísla nebo znaky.
  • Zástupný znak _ odpovídá přesně jedné hodnotě. Hodnota může být znak nebo číslo.
  • Operátor LIKE lze kombinovat s operátorem NOT a vrátit libovolný řádek, který neodpovídá vzoru hledání.

Stáhněte si databázi použitou v tomto výukovém programu