MYSQL查询对GPS坐标进行排序

时间:2013-09-25 08:48:06

标签: mysql

我有一个带有'gps'列的表,它有逗号分隔的纬度和经度值。 (纬度,经度) 如果我想按纬度和经度对表格进行排序,我该怎么做?

更新:我可以按纬度排序

ORDER BY gps*1 asc/desc

但我想按经度排序

如果我有两个单独的纬度和经度列,那会很容易,但我没有。

任何人都可以帮我吗?

提前致谢

2 个答案:

答案 0 :(得分:4)

尝试SUBSTRING_INDEX

SELECT SUBSTRING_INDEX(gps, ',', 1)  AS longitude,
       SUBSTRING_INDEX(gps, ',', -1) AS latitude
FROM   yourtable
ORDER  BY longitude,
          latitude  

答案 1 :(得分:1)

您应该使用substring_index找到longitudelatitude

编辑:

select
SUBSTRING_INDEX(longitude_and_latitude, ',', 1) as longitude,
SUBSTRING_INDEX(longitude_and_latitude, ',', -1) as latitude
from MY_TABLE
order by 1,2