Categorias:

Funções geoespaciais, Funções de conversão

ST_GEOMETRYFROMWKB

Analisa uma entrada de WKB (binário bem conhecido) ou EWKB (binário bem conhecido estendido) e retorna um valor do tipo GEOMETRY.

Aliases:

ST_GEOMFROMWKB , ST_GEOMETRYFROMEWKB , ST_GEOMFROMEWKB

Consulte também:

TO_GEOMETRY

Sintaxe

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

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

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

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

Argumentos

Obrigatório:

varchar_or_binary_expression

O argumento deve ser uma cadeia de caracteres ou expressão binária em WKB ou EWKB que represente um objeto geoespacial válido.

Uma expressão de cadeia de caracteres deve estar em formato hexadecimal (sem um 0x na frente).

Opcional:

srid

O valor inteiro do SRID a ser usado.

allow_invalid

Se TRUE, especifica que a função deve retornar um objeto GEOGRAPHY ou GEOMETRY, mesmo quando a forma de entrada for inválida e não puder ser reparada. Para obter mais detalhes, consulte Especificação de como as formas geoespaciais inválidas são tratadas.

Retornos

A função retorna um valor do tipo GEOMETRY.

Notas de uso

  • Emite um erro se a entrada não puder ser analisada como WKB ou EWKB.

  • Para a entrada WKB, se o argumento srid não for especificado, o objeto GEOMETRY resultante terá o SRID definido como 0.

Exemplos

O exemplo a seguir retorna o objeto GEOMETRY para um objeto geoespacial descrito no formato 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

No próximo exemplo, a entrada está no formato WKB, que não especifica o 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