Catégories :

Fonctions géospatiales, Fonctions de conversion

ST_GEOMETRYFROMWKB

Analyse une entrée WKB (binaire bien connu) ou EWKB (binaire bien connu étendu) et renvoie une valeur de type GEOMETRY.

Alias :

ST_GEOMFROMWKB , ST_GEOMETRYFROMEWKB , ST_GEOMFROMEWKB

Voir aussi :

TO_GEOMETRY

Syntaxe

ST_GEOMETRYFROMWKB( <varchar_or_binary_expression> , [ <allow_invalid> ] )

ST_GEOMFROMWKB( <varchar_or_binary_expression> , [ <allow_invalid> ] )

ST_GEOMETRYFROMEWKB( <varchar_or_binary_expression> , [ <allow_invalid> ] )

ST_GEOMFROMEWKB( <varchar_or_binary_expression> , [ <allow_invalid> ] )
Copy

Arguments

varchar_or_binary_expression

L’argument doit être une chaîne ou une expression binaire dans WKB ou EWKB qui représente un objet géospatial valide.

Une expression de chaîne doit être au format hexadécimal (sans 0x de début).

Facultatif :

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 à Specifying How Invalid Geospatial Shapes Are Handled.

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 WKB ou EWKB.

  • Pour une entrée WKB, l’objet GEOMETRY résultant a SRID fixé à 0.

    Pour modifier le SRID d’un objet GEOMETRY, passez l’objet GEOMETRY à ST_SETSRID, en spécifiant le SRID que vous voulez définir. ST_SETSRID renvoie l’objet GEOMETRY qui possède le SRID spécifié.

Exemples

L’exemple suivant renvoie l’objet GEOMETRY pour un objet géospatial décrit au format EWKB :

-- Set the geometry output format to EWKT
ALTER SESSION SET GEOMETRY_OUTPUT_FORMAT='EWKT';

SELECT ST_GEOMETRYFROMEWKB('0101000020797F000066666666A9CB17411F85EBC19E325641');
Copy
+---------------------------------------------------------------------------+
| ST_GEOMETRYFROMEWKB('0101000020797F000066666666A9CB17411F85EBC19E325641') |
|---------------------------------------------------------------------------|
| SRID=32633;POINT(389866.35 5819003.03)                                    |
+---------------------------------------------------------------------------+
Copy

Dans l’exemple suivant, l’entrée est au format WKB, qui ne spécifie pas le SRID :

-- Set the geometry output format to EWKT
ALTER SESSION SET GEOMETRY_OUTPUT_FORMAT='EWKT';

SELECT ST_GEOMETRYFROMEWKB('010100000066666666A9CB17411F85EBC19E325641');
Copy
+-------------------------------------------------------------------+
| ST_GEOMETRYFROMEWKB('010100000066666666A9CB17411F85EBC19E325641') |
|-------------------------------------------------------------------|
| SRID=0;POINT(389866.35 5819003.03)                                |
+-------------------------------------------------------------------+
Copy