PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Comment POSITION() fonctionne dans PostgreSQL

PostgreSQL a une POSITION() fonction qui renvoie le premier index de départ d'une sous-chaîne spécifiée dans une chaîne.

Si la sous-chaîne n'existe pas dans la chaîne, zéro est renvoyé.

Syntaxe

La syntaxe ressemble à ceci :

position ( substring text IN string text )

Exemples

Voici un exemple pour illustrer :

SELECT POSITION('and' IN 'Two Hands');

Résultat :

6

Comme mentionné, si la sous-chaîne n'est pas trouvée dans la chaîne, zéro est renvoyé :

SELECT POSITION('squid' IN 'Two Hands');

Résultat :

0

Arguments nuls

Les valeurs nulles renvoient null :

\pset null '<null>'
SELECT 
    POSITION(null IN 'Two Hands') AS "1",
    POSITION('and' IN null) AS "2";

Résultat :

   1    |   2    
--------+--------
 <null> | <null>

Omettre l'argument

L'omission de l'argument entraîne une erreur :

SELECT POSITION();

Résultat :

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.