Funkcja PATINDEX serwera SQL

Funkcja Patindex Serwera Sql

Ten samouczek ma na celu pomóc Ci zrozumieć, jak używać funkcji PATINDEX w SQL Server. Ta funkcja pozwala określić pozycję początkową wzorca w danym wyrażeniu wejściowym.

Funkcja Patindex() programu SQL Server

Poniższy fragment kodu definiuje składnię funkcji PATINDEX() w SQL Server:







PATINDEX ( '%wzorzec%' , wyrażenie )



Poniżej omówiono argumenty:



  1. wzorzec – ten argument definiuje wyrażenie znakowe do wyszukania w wyrażeniu. Ta wartość obsługuje znaki wieloznaczne, takie jak % i _. Funkcja zastosuje symbole wieloznaczne podobnie jak operator LIKE. Możesz podać maksymalnie 8000 znaków.
  2. wyrażenie – definiuje wyrażenie, w którym szukany jest wzorzec. Może to być wartość dosłowna lub kolumna.

Funkcja zwróci wówczas wartość całkowitą oznaczającą pozycję początkową pierwszego wzorca wystąpień w wyrażeniu. Jeśli wzorzec nie zostanie znaleziony w wyrażeniu, funkcja zwróci 0.





Jeśli którykolwiek z wymaganych argumentów ma wartość NULL, funkcja automatycznie zwróci wartość NULL.

Przykład użycia

Poniższe przykłady ilustrują, jak używać funkcji patindex() w SQL Server.



Przykład 1 – Podstawowe użycie

Poniżej znajduje się demonstracja podstawowego użycia funkcji patindex().

Wybierz patindex ( „% bitów%” , 'https://geekbits.io' ) jak pozycja;

Powinno to zwrócić pozycję początkową znalezionego wzorca jako:

poz
13

Przykład 2

W poniższym przykładzie używamy funkcji patindex() z wieloma symbolami wieloznacznymi.

Wybierz patindex ( '%g__k%' , 'https://geekbits.io' ) jak pozycja;

W takim przypadku funkcja powinna zwrócić:

poz
9

Przykład 3 – Użycie funkcji Patindex() ze złożonym wzorcem

Możemy również przekazać złożone wyrażenie regularne jako wzorzec w funkcji patindex, jak pokazano:

Wybierz patindex ( '%[^0-9A-Za-z]%' , 'Witamy w Linuxhint!' ) jak mecz;

Wynik:

mecz
dwadzieścia jeden

Przykład 4 – Użycie funkcji Patindex z kolumną

Załóżmy, że mamy tabelę, jak pokazano poniżej:

Możemy użyć funkcji patindex() do wyszukania pasującego wzorca w kolumnie nazwa_produktu, jak pokazano w poniższym zapytaniu:

Wybierz nazwa_produktu, producent, patindex ( „%2022%” , Nazwa produktu ) miejsce
z produktów

Powinno to zwrócić pozycję pasującego wzorca, jak pokazano:

Wniosek

W tym samouczku omówiliśmy podstawy pracy z funkcją PATINDEX() w SQL Server.