Categorias:

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

TO_GEOGRAPHY

Analisa uma entrada e retorna um valor do tipo GEOGRAPHY.

Consulte também:

TRY_TO_GEOGRAPHY , ST_GEOGRAPHYFROMWKB , ST_GEOGRAPHYFROMWKT

Sintaxe

Use uma das seguintes opções:

TO_GEOGRAPHY( <varchar_expression> [ , <allow_invalid> ] )

TO_GEOGRAPHY( <binary_expression> [ , <allow_invalid> ] )

TO_GEOGRAPHY( <variant_expression> [ , <allow_invalid> ] )

TO_GEOGRAPHY( <geometry_expression> [ , <allow_invalid> ] )
Copy

Argumentos

Obrigatório:

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.

geometry_expression

O argumento deve ser uma expressão do tipo GEOMETRY com o SRID 4326.

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 Especificação de como as formas geoespaciais inválidas são tratadas.

Retornos

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

Notas de uso

  • Emite um erro se a entrada não puder ser analisada como um dos formatos suportados (WKT, WKB, EWKT, EWKB, GeoJSON).

  • Emite um erro se o formato de entrada for EWKT ou EWKB e o SRID não for 4326. Consulte a nota sobre como lidar com EWKT e EWKB.

  • Para criar um objeto GEOGRAPHY a partir da entrada de WKT ou EWKT, você também pode usar ST_GEOGRAPHYFROMWKT.

  • Para criar um objeto GEOGRAPHY a partir da entrada de WKB ou EWKB, você também pode usar ST_GEOGRAPHYFROMWKB.

  • Para as coordenadas em WKT, EWKT e GeoJSON, a longitude aparece antes da latitude (por exemplo, POINT(lon lat)).

Exemplos

Isso mostra uma simples utilização da função TO_GEOGRAPHY com dados VARCHAR:

select TO_GEOGRAPHY('POINT(-122.35 37.55)');
Copy
+--------------------------------------+
| TO_GEOGRAPHY('POINT(-122.35 37.55)') |
|--------------------------------------|
| POINT(-122.35 37.55)                 |
+--------------------------------------+

O exemplo a seguir retorna o objeto GEOGRAPHY para um objeto geoespacial com coordenada Z descrito no formato WKT:

select TO_GEOGRAPHY('POINTZ(-122.35 37.55 30)');
Copy
+------------------------------------------+
| TO_GEOGRAPHY('POINTZ(-122.35 37.55 30)') |
|------------------------------------------|
| POINTZ(-122.35 37.55 30)                 |
+------------------------------------------+