网格内的点 sql

point within a mesh sql

我们想知道某个点是否在 sql 中的网格内。我们还想知道一个点是否在两个网格内,哪个在另一个网格内。例如:如果我们有一个网格覆盖美国,另一个覆盖德克萨斯。如果您通过德克萨斯州内的位置,它将 return 德克萨斯网格,但如果您通过俄克拉荷马州的位置,它将 return 美国网格。

你们知道这是如何实现的吗?在 mysql table 中表示这些网格的最佳方式是什么?

好吧,根据提供的信息很难回答这个问题,但我设想如下:

  • A mesh table - 定义网格的边界和赋值 ID
  • 城市分配 table - 表示城市位于基于网格 ID 和城市 ID 的给定网格内 - 唯一标识 通过分配 ID
  • 一个城市table - 定义一个城市的任何属性,包括它所属的网格ID--带有一个城市ID

任何插入城市table的东西都会通过评估网格边界(基于它自己的位置)来确定它所属的网格,并适当地分配自己。

确定边界网格的用例可以通过与边界网格的直接关系来实现,也可以根据与另一个网格相同的边(两个角坐标)动态计算。

(这篇评论太长了,所以如果您想补充意见,请随时发表评论:))