How do I convert a latitude/longitude pair into a PostGIS geography type?

前端 未结 3 1954
我寻月下人不归
我寻月下人不归 2021-01-30 17:27

I\'m trying to load a bunch of latitude/longitude pairs into a PostGIS geography type so as to be able to query by location.

In particular I have a table with float lat

3条回答
  •  时光说笑
    2021-01-30 17:50

    Here are some different ways to make geography types:

    • Convert numeric long and lat columns to a geog geography type:

       UPDATE mytable SET geog = ST_SetSRID(ST_MakePoint(long, lat), 4326)::geography
      
    • Convert a geom geometry column (SRID=4326) to a geog geography type using a simple cast:

       UPDATE mytable SET geog = geom::geography
      
    • Transform a projected geom geometry column to a geog geography type:

       UPDATE mytable SET geog = ST_Transform(geom, 4326)::geography
      

    Note that the last two examples work on any geometry type. Also, the conversion from geometry to geography is often implicit, and these examples work without ::geography, however explicit casts are usually a good practice for these things.

提交回复
热议问题