Funkcja Charindex SQL Server

Funkcja Charindex SQL Server
Sznurki są podstawowymi blokami budowlanymi w świecie rozwoju. Nawet w bazach danych spotykamy instancje, w których musimy wykonywać operacje ciągów.

Jedną z przydatnych funkcji SQL Server jest funkcja CharIndex (). Ta funkcja zwraca pozycję indeksu podłoża.

W tym przewodniku przyjrzy się, jak korzystać z funkcji CharIndex, aby wyszukać określone podłoże.

Podstawowe użycie

Zastosowaliśmy głównie funkcję CharIndex do zlokalizowania/wyszukiwania podrzędnego z określonej pozycji. Funkcja zwraca pozycję podkładu, jeśli zostanie znaleziona i liczba całkowita 0, jeśli nie znaleziono.

Składnia funkcji jest jako:

CharIndex (Substring, main_string [, start_location]);

Argumenty funkcyjne i wartość zwracana

Funkcja Charindex akceptuje 3 argumenty:

  1. podłoże - odnosi się do podjazdu, którego funkcja będzie przeszukiwać.
  2. Main_String - odnosi się do dosłownego ciągu, wyrażenia lub kolumny, z którego można przeszukać określone podłoże.
  3. start_location - to określa lokalizację, gdzie szukać określonego podłoża. Lokalizacja początkowa jest liczbą całkowitą, dużą liczbą całkowitą lub wyrażeniem, które powodują liczbę całkowitą lub wielką liczbą całkowitą.

Parametr start_location jest opcjonalny. Jeśli wartość pozycji start_.

Charindex domyślnie zwraca int. Jeśli jednak podłoże jest typu nvchar (max), varbinary (max) lub varchar (max), funkcja zwraca typ bigINT.

SQL Server Charindex () Przykłady

Spójrzmy na kilka przykładów korzystania z funkcji CharIndex () na serwerze SQL.

Przykład 1:

Poniższy przykład wyszukuje proste podłoże.

Wybierz CharIndex („SQL”, „Baza danych: SQL Server”) jako index_position;

Powyższe zapytanie powinno zwrócić pozycję wyjściową dopasowanego podkładu.

Przykładem jest to, jak pokazano:

indeks_position
--------------
11

Uwaga: Zwrócona pozycja początkowa to indeks oparty na 1, a nie 0.

Przykład 2

Poniższy przykład pokazuje, że pozycja początkowa jest oparta na 1.

Wybierz CharIndex („Linux”, „Linuxhint”) jako index_position;

Powstała lokalizacja to 1, jak pokazano poniżej:

indeks_position
--------------
1

Przykład 3:

Funkcja Charindex jest nieczuła przypadka. Oznacza to, że będzie pasował do podłańca, nawet jeśli nie podziela podobnej obudowy.

Wybierz CharIndex („Linux”, „Linuxhint”) jako index_position;

Zapytanie nadal zwraca pierwszą pasującą pozycję przeszukanego podłoża.

indeks_position
--------------
1

Przykład 4:

Załóżmy, że chcesz przeprowadzić wyszukiwanie wrażliwe na skrzynki za pomocą funkcji CharIndex? Aby to zrobić, możesz użyć zestawu, aby określić celowanie docelowe.

Przykładem jest jak pokazano:

Wybierz CharIndex („Linux”, „Linuxhint” Zbieraj Latin1_general_CS_S_S_S_WS) jako index_position;

Powyższe zapytanie zwróci liczbę całkowitą 0, ponieważ nie ma dopasowania podkładu.

indeks_position
--------------
0

Przykład 5:

Jak wspomnialiśmy wcześniej, możesz określić wartość STTHE_POSITION, aby ustawić początek pozycji wyszukiwania.

Na przykład pytanie poniżej ustawia pozycję początkową na 10.

Wybierz CharIndex („Charindex”, „SQL Server Tutorial”, 10) jako indeks_position;

W naszym przykładzie pierwszy mecz podłoża znajduje się na pozycji 12.

indeks_position
--------------
12

Jeśli ustawimy pozycję początkową po pierwszym dopasowaniu podłoża, funkcja zwróci 0, ponieważ nie ma innych dopasowanych przypadków.

Wybierz CharIndex („Charindex”, „SQL Server Tutorial”, 13) jako indeks_position;

Wartość zwracana jest jako:

indeks_position
--------------
0

Wniosek

W tym artykule zrozumiałeś, jak korzystać z funkcji CharIndex () na serwerze SQL. Ta funkcja pozwala wyszukiwać podłoże i zwrócić pozycję pierwszego dopasowania.

Dziękuję za przeczytanie!