LIKE w SQL

Słownik kwalifikacji INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

LIKE to operator używany w klauzuli WHERE do wyszukiwania tekstów pasujących do określonego wzorca. Najczęściej stosuje się go dla kolumn typu tekstowego, np. imion, nazwisk, loginów lub adresów e-mail.

Symbole wieloznaczne

W operatorze LIKE używa się znaków specjalnych:

  • % — oznacza dowolny ciąg znaków, także pusty,
  • _ — oznacza dokładnie jeden dowolny znak.

Przykłady

SELECT imie FROM mieszkancy WHERE imie LIKE 'A%';

Zwróci imiona zaczynające się na literę A, np. Anna, Adam, Arieta.

SELECT imie FROM mieszkancy WHERE imie LIKE '_r%';

Ten warunek oznacza:

  • pierwszy znak może być dowolny,
  • drugi znak musi być literą r,
  • dalej może wystąpić dowolny ciąg znaków.

Pasują więc np. Arieta, Krzysztof, Krystyna, Tristan, ponieważ druga litera tych imion to r.

Typowe błędy

Nie należy mylić znaków % i _. Zapis 'r%' oznacza tekst zaczynający się od r, natomiast '_r%' oznacza tekst, w którym r jest drugim znakiem. W pytaniach egzaminacyjnych warto sprawdzać wzorzec znak po znaku.