postgresql – 无需查询数据库即可将lat-long转换为PostGIS几何体

postgresql – 无需查询数据库即可将lat-long转换为PostGIS几何体,第1张

概述我在 postgresql中有一个带有PostGIS几何(point,4326)列(位置,使用SRID 4326)的表,我有一个使用SQL Alchemy更新表(其余列)的 Python应用程序没有任何问题. 现在,我需要更新位置列,我知道我可以使用给定位置的正确文本表示来使用SQL Alchemy更新列而无需使用GEOAlchemy,例如我可以使用值更新列:’0101000020E6100000 我在 postgresql中有一个带有PostGIS几何(point,4326)列(位置,使用SRID 4326)的表,我有一个使用sql Alchemy更新表(其余列)的 Python应用程序没有任何问题.

现在,我需要更新位置列,我知道我可以使用给定位置的正确文本表示来使用sql Alchemy更新列而无需使用GEOAlchemy,例如我可以使用值更新列:’0101000020E6100000AEAC7EB61F835DC0241CC418A2F74040 “

对应于lat:33.9346343 long:-118.0488106

问题是:有没有办法在Python中计算这个’0101000020E6100000AEAC7EB61F835DC0241CC418A2F74040’这个(33.9346343,-118.0488106)作为输入而不查询数据库?或使用适当的文本输入更新列的任何方法?

我知道我可以使用sqlAlchemy来执行此查询:

select st_setsrID(st_makepoint(-118.0488106,33.9346343),4326)

并获取更新列的值,但我想避免这种情况.

提前致谢!

解决这个问题的方法比看起来容易得多.要使用文本和输入lat-long更新字段,我需要做的就是在文本分配中定义SRID:

location =’SRID = 4326; POINT(-118.0488106 33.9346343)’

这将正确更新几何(point,4326)列,当您在表中执行select时,列的值是预期的值:

“0101000020E6100000AEAC7EB61F835DC0241CC418A2F74040”

多谢你们!

总结

以上是内存溢出为你收集整理的postgresql – 无需查询数据库即可将lat-long转换为PostGIS几何体全部内容,希望文章能够帮你解决postgresql – 无需查询数据库即可将lat-long转换为PostGIS几何体所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/1166456.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-01
下一篇 2022-06-01

发表评论

登录后才能评论

评论列表(0条)

保存