PostgreSQL har en POSITION()
funktion, der returnerer det første startindeks for en specificeret understreng i en streng.
Hvis understrengen ikke findes i strengen, returneres nul.
Syntaks
Syntaksen ser sådan ud:
position ( substring text IN string text )
Eksempler
Her er et eksempel til demonstration:
SELECT POSITION('and' IN 'Two Hands');
Resultat:
6
Som nævnt, hvis understrengen ikke findes i strengen, returneres nul:
SELECT POSITION('squid' IN 'Two Hands');
Resultat:
0
Nul-argumenter
Nul-værdier returnerer null
:
\pset null '<null>'
SELECT
POSITION(null IN 'Two Hands') AS "1",
POSITION('and' IN null) AS "2";
Resultat:
1 | 2 --------+-------- <null> | <null>
Udladelse af argumentet
Udeladelse af argumentet resulterer i en fejl:
SELECT POSITION();
Resultat:
ERROR: function pg_catalog.position() does not exist LINE 1: SELECT POSITION(); ^ HINT: No function matches the given name and argument types. You might need to add explicit type casts.