- Categorias:
TO_GEOMETRY¶
Analisa uma entrada e retorna um valor do tipo GEOMETRY.
- Consulte também:
Sintaxe¶
Use uma das seguintes opções:
TO_GEOMETRY( <varchar_expression> , [ <allow_invalid> ] )
TO_GEOMETRY( <binary_expression> , [ <allow_invalid> ] )
TO_GEOMETRY( <variant_expression> , [ <allow_invalid> ] )
Argumentos¶
varchar_expression
O argumento deve ser uma expressão de cadeia de caracteres que represente um objeto geométrico válido em um dos seguintes formatos:
WKT (texto bem conhecido).
WKB (binário bem conhecido) em formato hexadecimal (sem um
0x
na frente).EWKT (texto bem conhecido estendido).
EWKB (binário bem conhecido estendido) em formato hexadecimal (sem um
0x
na frente).GeoJSON.
binary_expression
O argumento deve ser uma expressão binária no formato WKB ou EWKB.
variant_expression
O argumento deve ser um formato OBJECT no formato GeoJSON.
Opcional:
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 Specifying How Invalid Geospatial Shapes Are Handled.
Notas de uso¶
Emite um erro se a entrada não puder ser analisada como um dos formatos suportados (WKT, WKB, EWKT, EWKB, GeoJSON).
Para entradas GeoJSON, WKT e WKB, o SRID do objeto GEOMETRY resultante é definido como 0. Para alterar o SRID, passe o objeto GEOMETRY para ST_SETSRID especificando o SRID que você deseja definir. ST_SETSRID retorna o objeto GEOMETRY com esse SRID definido.
Para criar um objeto GEOMETRY a partir da entrada de WKT ou EWKT, você também pode usar ST_GEOMETRYFROMWKT.
Para criar um objeto GEOMETRY a partir da entrada de WKB ou EWKB, você também pode usar ST_GEOMETRYFROMWKB.
Exemplos¶
Isso mostra uma simples utilização da função TO_GEOMETRY com dados VARCHAR:
alter session set geometry_output_format='WKT'; select to_geometry('POINT(1820.12 890.56)');+--------------------------------------+ | TO_GEOMETRY('POINT(1820.12 890.56)') | |--------------------------------------| | POINT(1820.12 890.56) | +--------------------------------------+