Skip to main content

PATINDEX FUNCTION IN SQL SERVER

Returns the starting position of first occurrence of pattern in a specified expression.

Syntax:

Select Patindex(pattern char,expression char) returns int

Note:

  • It returns the integer value.
  • It returns the zero (0) when you are specified position is not matched in the expression.


Here is the simple string with postions for using entire examples in the Patindex Function.

1 2 3 4 5 6 7 8 9 10 11 12

L E A D F I R S T S Q L


Example-1:
SELECT PATINDEX('%a%','LEADFIRSTSQL') [PATINDEX_POSITION]







Example-2:
SELECT PATINDEX('%S%','LEADFIRSTSQL') [PATINDEX_POSITION]






Example-3:
SELECT PATINDEX('%_R_%','LEADFIRSTSQL') [PATINDEX_POSITION]







Example-4:
SELECT PATINDEX('%[abcde]%','LEADFIRSTSQL') [PATINDEX_POSITION]






Here is the example any of the character postion starting in the expression. It would match either a,b,c,d,e in the expression.

Example-5:
SELECT PATINDEX('%[7]%','LEADFIRSTSQL') [PATINDEX_POSITION]






Here Position is the Zero ,because of the 7 numberic value not exists the specified expression. 


Example-6:

SELECT PATINDEX('%[^A-Z]%','LEADFIRSTSQL1') [PATINDEX_POSITION]





Here not match any character in [A-Z] regular expression . 

Comments

Post a Comment

Popular posts from this blog

Rank Functions in SQL SERVER

1 . ROW_NUMBER () OVER ( [PARTITION BY CLAUSE] < ORDER BY CLUASE >): Returns the sequantial number of a row within the a partition of result set at 1 for the first row of the each partition. 2. RANK () OVER ( [PARTITION BY CLAUSE] < ORDER BY CLUASE >): Returns rank for rows within the partition of result set. 3. DENSE_RANK () OVER ( [PARTITION BY CLAUSE] < ORDER BY CLUASE >): Returns rank for rows within the partition of result set.With out any gaps in the ranking. 4. NTILE ( INTEGER_EXPRESSION ) OVER ( [PARTITION BY CLAUSE] < ORDER BY CLUASE >): Distributes the rows in an ordered partition into a specified number of groups. Examples: --create Employee table create table Employee (                 EmpId int identity ( 1 , 1 ) primary key ,              ...

Difference between LEN and DATALENGTH

LEN: LEN function returns the number of characters in a variable .it also removes the trailing spaces and then then return the length. Example-1: DECLARE @Name VARCHAR ( 20 )= 'rakesh' SELECT LEN ( @Name ) as [len] Output: Example-2: DECLARE @Name VARCHAR ( 20 )= 'rakesh ' SELECT LEN ( @Name ) as [len] Output: When we observe above variable assigned 'rakesh ' string after that added 3 spaces . Len function removes trailing spaces not leading spaces. DATALENGTH : DATALENG function returns the number of bytes occupy in a variable .it also considered the spaces also. Example-1: DECLARE @Name VARCHAR ( 20 )= 'rakesh' SELECT DATALENGTH ( @Name ) as [DataLength] Output: Example-2: DECLARE @Name VARCHAR ( 20 )= ' rakesh ' SELECT DATALENGTH ( @Name ) as [DataLength] Output: In above example before ' r ' and after ...