POSITION

From SQLZOO
Jump to navigation Jump to search
Compatibility
POSITION(s1 IN s2)
EngineOKAlternative
ingresYes
mysqlYes
oracleNoINSTR(s2,s1)
postgresYes
sqlserverNoPATINDEX('%'+s1+'%',s2)

POSITION

POSITION(s1 IN s2) returns the character position of the substring s1 within the larger string s2. The first character is in position 1. If s1 does not occur in s2 it returns 0.

   POSITION('ll' IN 'Hello world') -> 3      

In this example you return the position of the string 'an' within the name of the country.

SELECT name,
       PATINDEX('%an%', name)
  FROM bbc
 ORDER BY name
SELECT name,
       INSTR(name, 'an')
  FROM bbc
SELECT name,
       POSITION('an' IN name)
  FROM bbc

See also

DataWars, Data Science Practice Projects - LogoDataWars: Practice Data Science/Analysis with +100 Real Life Projects