Catégories :

Fonctions géospatiales, Fonctions de conversion

TRY_TO_GEOMETRY

Analyse une entrée et renvoie une valeur de type GEOMETRY.

Cette fonction est identique à TO_GEOMETRY sauf qu’elle renvoie NULL lorsque TO_GEOMETRY émettrait une erreur.

Voir aussi :

TO_GEOMETRY

Syntaxe

Utilisez l’une des méthodes suivantes :

TRY_TO_GEOMETRY( <varchar_expression> [ , <srid> ] [ , <allow_invalid> ] )

TRY_TO_GEOMETRY( <binary_expression> [ , <srid> ] [ , <allow_invalid> ] )

TRY_TO_GEOMETRY( <variant_expression> [ , <srid> ] [ , <allow_invalid> ] )
Copy

Arguments

Obligatoire :

varchar_expression

L’argument doit être une expression de chaîne qui représente un objet géométrique valide dans l’un des formats suivants :

  • WKT (texte bien connu).

  • WKB (binaire bien connu) au format hexadécimal (sans un 0x de début).

  • EWKT (texte bien connu étendu).

  • EWKB (binaire bien connu étendu) au format hexadécimal (sans un 0x de début).

  • GeoJSON.

binary_expression

L’argument doit être une expression binaire au format WKB ou EWKB.

variant_expression

L’argument doit être un OBJECT au format GeoJSON.

Facultatif :

srid

La valeur entière du SRID à utiliser.

allow_invalid

Si TRUE, spécifie que la fonction doit renvoyer un objet GEOGRAPHY ou GEOMETRY, même lorsque la forme d’entrée n’est pas valide et ne peut pas être réparée. Pour plus de détails, reportez-vous à Spécification du mode de traitement des formes géospatiales non valides.

Renvoie

La fonction renvoie une valeur de type GEOMETRY.

Notes sur l’utilisation

  • Renvoie NULL si l’entrée ne peut pas être analysée comme le format pris en charge approprié (WKT, WKB, EWKT, EWKB, GeoJSON).

  • Pour les entrées GeoJSON, WKT et WKB, si l’argument srid n’est pas spécifié, l’objet GEOMETRY résultant a pour SRID 0.

Exemples

Cela montre une utilisation simple de la fonction TRY_TO_GEOMETRY avec des données VARCHAR :

select try_to_geometry('INVALID INPUT');
Copy
+--------------------------------------+
| try_to_geometry('INVALID INPUT')     |
|--------------------------------------|
| NULL                                 |
+--------------------------------------+
Copy