Oracle jak

Oracle jak

W Oracle i innych relacyjnych bazach danych dopasowanie wzorów jest popularną funkcją, która pozwala wyszukiwać wzorce ciągów za pomocą specjalnych składni. Na przykład możesz wyszukać podłoże w dużym zestawie ciągów za pomocą operatorów i funkcji dopasowywania wzorów.

To sprawia, że ​​jest to bardzo przydatne do budowania prostych klauzul wyszukiwania bez ponoszenia znacznych kar w bazie danych.

W tym samouczku natkniesz się na podobny operator w Oracle, aby wykonywać zapytania dopasowujące wzory.

Wyrocznia jak operator

Operator podobny w Oracle umożliwia wyszukiwanie określonego wzoru w danej kolumnie. Na przykład możesz go użyć, aby znaleźć wszystkie wiersze, w których imię klienta zaczyna się od wzoru „JA”.

Często znajdziesz ten operator używany w połączeniu z innymi klauzulami SQL, takimi jak klauzula Where, do filtrowania naszych wyników na podstawie określonego wzoru.

Możemy wyrazić składnię podobnego operatora w SQL, jak pokazano poniżej:

Wyrażenie jak wzór [Escape „Escape_character”]
  1. Parametr wyrażenia określa kolumnę, którą chcesz wyszukać.
  2. Parametr wzorca określa określony wzór, który chcesz wyszukać. Określony wzór może zawierać znaki wieloznaczne, takie jak % i _, aby dopasować odpowiednio dowolną liczbę znaków lub pojedynczy znak.
  3. Możemy również dołączyć klauzulę ucieczki, aby określić znak ucieczki używany do wyszukiwania rzeczywistych znaków wieloznacznych.

Przykłady jak operator

Poniższe przykłady pokazują, jak korzystać z podobnego operatora w tabeli Oracle.

Załóżmy, że mamy tabelę zawierającą informacje o kliencie, jak pokazano poniżej:

Przykład 1 - Korzystanie z znaków % dzikiej karty

Możemy użyć % znaków wieloznacznych, aby dopasować wszelkie struny zero lub więcej znaków. Na przykład możemy znaleźć wszystkie wpisy w tabeli zawierającej nazwę „Will%”.

Weź tabelę pracowników pokazaną poniżej:

Wybierz nazwę pierwszej nazwy, pensja, wynagrodzenie
od pracowników
gdzie nazwa pierwszej_
zamów według nazwy pierwszej;

Poprzednie zapytanie wybiera nazwę pierwszej nazwy, nazwy Last_name i pensji z tabeli pracowników i zamawia wynikowe wartości według kolumny pierwszej nazwy_.

Łączymy również klauzulę Where w połączeniu z podobnym operatorem z % znakami wieloznacznymi, aby pobierać rzędy, w których imię zaczyna się od „woli”.

Powinno to zwrócić wiersze jako:

Możemy również użyć znaku % dzikiej karty, aby pobrać wiersze, które kończą się w określonym wzorze.

Przykład jest pokazany poniżej:

Wybierz nazwę pierwszej nazwy, pensja, wynagrodzenie
od pracowników
gdzie nazwa pierwszej_
zamów według nazwy pierwszej;

W takim przypadku poprzednie zapytanie powinno zwrócić wszystkie wiersze, w których imię kończy się w „ER”. Przykład wynikający z tego wartość pokazano poniżej:

Baza danych Oracle, podobna do operatora, jest domyślnie wrażliwe na wielkość liter, więc należy o tym pamiętać, szukając określonych wzorców. Możesz użyć innych funkcji, takich jak dolna i górna, aby zanotować to zachowanie.

Przykład 2 - Korzystanie z klauzuli ucieczki

Poniższy przykład pokazuje, jak korzystać z klauzuli ucieczki w Oracle Like Operator:

Wybierz nazwę pierwszej nazwy, pensja, pensja, komisja_pct
od pracowników
gdzie commission_pct jak '20 \%„uciekają” \ ';

Poprzednie zapytanie wybiera kolumny First_name, Last_name, wynagrodzenie i prowizja z tabeli pracowników. Klauzula Where używa operatora podobnego z klauzulą ​​ucieczki, aby pobrać zapisy, w których kolumna Commission_Pct zawiera ciąg '20 % '(z dosłownie % znakiem, a nie wieloznaczką).

W tym przypadku uciekamy o wartości % z znakiem odwrotnym (\) podczas wyszukiwania ciągów 20 %. To pozwala operatorowi podobnego wyszukiwać dokładny ciąg '20 % 'zamiast traktować % znaku jako wieloznaczną kartę.

To zapytanie zwróci wszystkie wiersze z tabeli pracowników, w których kolumna Commission_PCT zawiera dokładny ciąg '20%', wraz z pierwszą nazwą, nazwą Last_name i pensji dla tych wierszy.

Wniosek

W tym poście nauczyłeś się, jak korzystać z podobnego operatora w bazach danych Oracle do wyszukiwania określonych wzorców w tabeli. Dostarczono kilka przykładów, aby podkreślić przy użyciu znaków wieloznacznych i klauzuli Escape.