Funkcja Oracle Inst

Funkcja Oracle Inst
Podczas pracy z bazami danych często napotykasz niektóre przypadki, w których musisz przechowywać sekwencję znaków w danej tabeli. String Rodzaje danych służą do obsługi takich danych, umożliwiając przechowywanie informacji tekstowych, takich jak nazwy, adresy, opisy, blogi itp.

Chociaż różne silniki bazy danych obsługują ciągi inaczej, wszystkie działają, definiując określony zestaw znaków, który określa kodowanie znaków. Każdy zestaw znaków i kodowanie określa, w jaki sposób jest przechowywany dany ciąg i może ograniczyć operacje wykonywane na ciągu.

Manipulacja ciągami odnosi się do różnych działań i metod, które można zastosować do danego ciągu. Na przykład możesz przycinać ciąg do danej pozycji, usunąć ustawianie lub prowadzenie znaków białych z wartości wejściowej i więcej.

W tym samouczku dowiemy się o jednej z funkcji manipulacji ciągami w Oracle. Funkcja instr () pozwala wyszukiwać podłoże w ciągu wejściowego i zwrócić pozycję podkładu.

Składnia funkcji

Poniżej pokazuje składnię funkcji instal () w bazach danych Oracle:

Instru (string, podaj [, start [, występowanie]]);

Funkcja akceptuje następujące argumenty:

  • String - Ten argument oznacza główny ciąg, który chcesz wyszukać.
  • Substring - określa to podłoże, które chcesz wyszukać w głównym ciągu.
  • Start_position - Parametr START_PUTION umożliwia określenie pozycji, w której funkcja zaczyna wyszukiwać określone podłoże. Jest to opcjonalny argument; Jeśli nie jest ustawiona, funkcja rozpoczyna wyszukiwanie na początku ciągu.
  • Występowanie - jest to również parametr opcjonalny, który określa występowanie podłoża w ciągu, którą chcesz zlokalizować. Na przykład, aby znaleźć pierwsze zdarzenie, ustaw wartość argumentu na 1.

Funkcja zwraca dodatnią liczbę całkowitą, która określa pozycję podłoża w ciągu ciągu. Funkcja zwraca również liczbę całkowitą 0, jeśli podłoże nie zostanie znalezione.

Przykłady

Poniższe przykłady pokazują, jak korzystać z funkcji instal () w bazach danych Oracle.

Przykład 1:
Rozważ ten przykład, który pokazuje, jak używać funkcji instr (.

WYBIERAĆ
Inst („Witamy w bazach danych Oracle!!„,„ Oracle ”) jako POS
Z podwójnego;

W takim przypadku dostarczone zapytanie zwraca pozycję początkową podkładu „Oracle” z „Witamy w bazach danych Oracle!!" strunowy.

Poz
-----------
12

Przykład 2:
Warto pamiętać, że funkcja instr () jest wrażliwa na literę. Przykładowa demonstracja znajduje się w następujący sposób:

WYBIERAĆ
Inst („Witamy w bazach danych Oracle!!„,„ Oracle ”) jako POS
Z podwójnego;

W tym przykładzie wyszukiwamy podłoże „Oracle” z małymi literami „O” w głównym ciągu. Ponieważ w głównym ciągu nie występuje dopasowanie, funkcja zwraca 0, jak pokazano następująco:

Poz
--------
0

Przykład 3:
Możemy również wyszukać drugie wystąpienie podłańca, ustawiając parametr występowania, jak pokazano w tym przykładzie:

WYBIERAĆ
Inst („Szybki brwi lis przeskakował nad leniwym woły”, „wołu”, 2) jako POS
Z podwójnego;

W takim przypadku mówimy o funkcji, aby zwróciła pozycję drugiego wystąpienia pod substringiem.

Pomija to pierwsze wystąpienie, które znajduje się w podłoże „Fox” i zwraca położenie drugiego wystąpienia w podciągu „wół”.

Poz
----------
17

Przykład 4:

Możemy również przeprowadzić wyszukiwanie odwrotne, określając występowanie jako negatywna liczba całkowita. Przykładowa demonstracja jest następująca:

WYBIERAĆ
Inst („Quick Brow Fox skoczył nad leniwym woły”, „wołu”, -1) jako POS
Z podwójnego;

Wyjście:

Poz
-------
41

Wniosek

W tym poście omówiliśmy podstawy pracy z funkcją Oracle Instr (), aby zlokalizować pozycję podkładu w danym ciągu. Chociaż funkcja działa dobrze w określonych scenariuszach, należy pamiętać o kilku ograniczeniach:

  1. Funkcja jest wrażliwa na przypadek. Oznacza to, że musisz upewnić się, że podć.
  2. Funkcja nie obsługuje dopasowywania wyrażeń regularnych.
  3. Funkcja jest ograniczona tylko do typów ciągów; Konieczne może być praca z innymi funkcjami dla innych większych bloków tekstowych.

To powiedziawszy, funkcja oferuje minimalny i wydajny sposób wyszukiwania lokalizacji podłoża w ciągu wejściowego.