我在SQL Server中有一个表,其中包含存储为纬度/经度Decimal
列的GPS“轨迹”。轨道只是GPS记录的一系列连接点。
添加新曲目时,我需要查询数据库以查看它是否与任何现有曲目匹配。由于记录的GPS坐标不完全相同,因此必须考虑误差范围。任何人都可以建议一种有效的方法吗?
答案 0 :(得分:0)
试试这个
SELECT * FROM (SELECT * FROM `tracks` as table1
WHERE `longitude` BETWEEN '75.294472'-0.01 AND '75.294472'+0.01) as table2
WHERE `latitude` BETWEEN '19.881256'-0.01 AND '19.881256'+0.01
此处 0.02 是保证金
table1 包含满足经度条件的所有行,这些行在 table2 中再次过滤,以满足纬度条件