SQL Server PATINDEX Function

Sql Server Patindex Function



Ang tutorial na ito ay naglalayong gabayan ka sa pag-unawa kung paano gamitin ang PATINDEX function sa SQL Server. Binibigyang-daan ka ng function na ito na matukoy ang panimulang posisyon ng isang pattern sa isang ibinigay na expression ng input.

SQL Server Patindex() Function

Ang sumusunod na code snippet ay tumutukoy sa syntax ng PATINDEX() function sa SQL Server:







PATINDEX ( '%pattern%' , pagpapahayag )



Ang mga argumento ay ginalugad sa ibaba:



  1. pattern – tinutukoy ng argumentong ito ang expression ng character na hahanapin sa expression. Sinusuportahan ng value na ito ang mga wildcard na character gaya ng % at _. Ilalapat ng function ang mga wildcard na character na katulad ng operator ng LIKE. Maaari ka lamang magbigay ng maximum na 8000 character.
  2. pagpapahayag – ito ay tumutukoy sa expression kung saan hinahanap ang pattern. Ito ay maaaring literal na halaga o column.

Ang function ay magbabalik ng isang integer na halaga na nagsasaad ng panimulang posisyon ng unang paglitaw na pattern sa expression. Kung ang pattern ay hindi matatagpuan sa expression, ang function ay nagbabalik ng 0.





Kung ang alinman sa mga kinakailangang argumento ay NULL, ang function ay awtomatikong magbabalik ng NULL.

Halimbawa ng Paggamit

Ang mga sumusunod na halimbawa ay naglalarawan kung paano gamitin ang patindex() function sa SQL Server.



Halimbawa 1 – Pangunahing Paggamit

Nasa ibaba ang isang pagpapakita ng pangunahing paggamit ng patindex() function.

pumili patindex ( '%bits%' , 'https://geekbits.io' ) bilang pos;

Dapat nitong ibalik ang panimulang posisyon ng nahanap na pattern bilang:

pos
13

Halimbawa 2

Sa halimbawa sa ibaba, ginagamit namin ang patindex() function na may maraming wildcard na character.

pumili patindex ( '%g__k%' , 'https://geekbits.io' ) bilang pos;

Sa kasong ito, dapat bumalik ang function:

pos
9

Halimbawa 3 – Paggamit ng Patindex() Function na may Complex Pattern

Maaari din tayong magpasa ng isang kumplikadong regular na expression bilang pattern sa patindex function tulad ng ipinapakita:

pumili patindex ( '%[^0-9A-Za-z]%' , 'Welcome sa Linuxhint!!' ) bilang tugma;

Resulta:

tugma
dalawampu't isa

Halimbawa 4 – Paggamit ng Patindex Function na may Column

Ipagpalagay na mayroon kaming isang talahanayan tulad ng nakalarawan sa ibaba:

Maaari naming gamitin ang patindex() function upang maghanap ng pagtutugma ng pattern sa product_name column gaya ng ipinapakita sa query sa ibaba:

pumili product_name, manufacturer, patindex ( '%2022%' , pangalan ng Produkto ) lugar
mula sa mga produkto

Dapat nitong ibalik ang posisyon ng pagtutugma ng pattern tulad ng ipinapakita:

Konklusyon

Sa tutorial na ito, tinalakay namin ang mga batayan ng pagtatrabaho sa PATINDEX() function sa SQL Server.