Cilj ovog vodiča je pomoći vam da razumijete kako koristiti funkciju PATINDEX u SQL Serveru. Ova vam funkcija omogućuje određivanje početne pozicije uzorka u zadanom ulaznom izrazu.
SQL Server Patindex() funkcija
Sljedeći isječak koda definira sintaksu funkcije PATINDEX() u SQL Serveru:
PATINDEX ( '%uzorak%' , izraz )
Argumenti su istraženi u nastavku:
- uzorak – ovaj argument definira znakovni izraz koji se traži u izrazu. Ova vrijednost podržava zamjenske znakove kao što su % i _. Funkcija će primijeniti zamjenske znakove slično operatoru LIKE. Možete unijeti najviše 8000 znakova.
- izraz – ovo definira izraz u kojem se pretražuje uzorak. To može biti doslovna vrijednost ili stupac.
Funkcija će zatim vratiti vrijednost cijelog broja koja označava početnu poziciju uzorka prvog pojavljivanja u izrazu. Ako uzorak nije pronađen u izrazu, funkcija vraća 0.
Ako je bilo koji od potrebnih argumenata NULL, funkcija će automatski vratiti NULL.
Primjer upotrebe
Sljedeći primjeri ilustriraju kako koristiti funkciju patindex() u SQL Serveru.
Primjer 1 – Osnovna upotreba
Ispod je demonstracija osnovne upotrebe funkcije patindex().
Odaberi patindex ( '%komadići%' , 'https://geekbits.io' ) kao pos;Ovo bi trebalo vratiti početnu poziciju pronađenog uzorka kao:
poz13
Primjer 2
U donjem primjeru koristimo funkciju patindex() s više zamjenskih znakova.
Odaberi patindex ( '%g__k%' , 'https://geekbits.io' ) kao pos;U ovom slučaju, funkcija bi trebala vratiti:
poz9
Primjer 3 – Korištenje funkcije Patindex() sa složenim uzorkom
Također možemo prenijeti složeni regularni izraz kao uzorak u funkciji patindex kao što je prikazano:
Odaberi patindex ( '%[^0-9A-Za-z]%' , 'Dobro došli u Linuxhint!!' ) kao utakmica;Proizlaziti:
odgovaratidvadeset i jedan
Primjer 4 – Korištenje Patindex funkcije sa stupcem
Pretpostavimo da imamo tablicu kao što je prikazano u nastavku:
Možemo koristiti funkciju patindex() za pretraživanje odgovarajućeg uzorka u stupcu product_name kao što je prikazano u upitu u nastavku:
Odaberi naziv_proizvoda, proizvođač, patindex ( '%2022%' , ime proizvoda ) mjestood proizvoda
Ovo bi trebalo vratiti položaj odgovarajućeg uzorka kao što je prikazano:
Zaključak
U ovom vodiču pokrili smo osnove rada s funkcijom PATINDEX() u SQL Serveru.