- Catégories :
TO_GEOMETRY¶
Analyse une entrée et renvoie une valeur de type GEOMETRY.
- Voir aussi :
Syntaxe¶
Utilisez l’une des méthodes suivantes :
TO_GEOMETRY( <varchar_expression> [ , <srid> ] [ , <allow_invalid> ] )
TO_GEOMETRY( <binary_expression> [ , <srid> ] [ , <allow_invalid> ] )
TO_GEOMETRY( <variant_expression> [ , <srid> ] [ , <allow_invalid> ] )
TO_GEOMETRY( <geography_expression> [ , <srid> ] [ , <allow_invalid> ] )
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.
geography_expression
L’argument doit être une expression de type GEOGRAPHY.
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¶
Émet une erreur si l’entrée ne peut pas être analysée comme l’un des formats pris en charge (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.Pour construire un objet GEOMETRY à partir d’une entrée WKT ou EWKT, vous pouvez également utiliser ST_GEOMETRYFROMWKT.
Pour construire un objet GEOMETRY à partir d’une entrée WKB ou EWKB, vous pouvez également utiliser ST_GEOMETRYFROMWKB.
Exemples¶
L’exemple suivant montre comment utiliser la fonction TO_GEOMETRY pour convertir un objet représenté par WKT en un objet GEOMETRY. L’exemple ne spécifie pas l’argument srid
, et le SRID n’est pas spécifié dans la représentation d’entrée de l’objet, de sorte que le SRID est fixé à 0.
ALTER SESSION SET GEOMETRY_OUTPUT_FORMAT='EWKT';
SELECT TO_GEOMETRY('POINT(1820.12 890.56)');
+--------------------------------------+
| TO_GEOMETRY('POINT(1820.12 890.56)') |
|--------------------------------------|
| SRID=0;POINT(1820.12 890.56) |
+--------------------------------------+
L’exemple suivant convertit un objet représenté par EWKT en un objet GEOMETRY. L’entrée EKWT spécifie le SRID à utiliser :
ALTER SESSION SET GEOMETRY_OUTPUT_FORMAT='EWKT';
SELECT TO_GEOMETRY('SRID=4326;POINT(1820.12 890.56)');
+------------------------------------------------+
| TO_GEOMETRY('SRID=4326;POINT(1820.12 890.56)') |
|------------------------------------------------|
| SRID=4326;POINT(1820.12 890.56) |
+------------------------------------------------+
L’exemple suivant montre comment spécifier le SRID en tant qu’argument d’entrée srid
:
ALTER SESSION SET GEOMETRY_OUTPUT_FORMAT='EWKT';
SELECT TO_GEOMETRY('POINT(1820.12 890.56)', 4326);
+--------------------------------------------+
| TO_GEOMETRY('POINT(1820.12 890.56)', 4326) |
|--------------------------------------------|
| SRID=4326;POINT(1820.12 890.56) |
+--------------------------------------------+
L’exemple suivant renvoie l’objet GEOMETRY pour un objet géospatial avec une coordonnée Z décrit au format EWKT :
ALTER SESSION SET GEOMETRY_OUTPUT_FORMAT='EWKT';
SELECT TO_GEOMETRY('SRID=32633;POINTZ(389866.35 5819003.03 30)');
+-----------------------------------------------------------+
| TO_GEOMETRY('SRID=32633;POINTZ(389866.35 5819003.03 30)') |
|-----------------------------------------------------------|
| SRID=32633;POINTZ(389866.35 5819003.03 30) |
+-----------------------------------------------------------+
Pour des exemples de conversion d’un objet GEOGRAPHY en un objet GEOMETRY, voir Conversion entre GEOGRAPHY et GEOMETRY.