MySQL中根据经纬度按距离排序的SQL

SELECT
	o.*, ROUND(
		6378.138 * 2 * ASIN(
			SQRT(
				POW(
					SIN(
						(
							30.768011111 * PI() / 180 - o.latitude * PI() / 180
						) / 2
					),
					2
				) + COS(30.768011111 * PI() / 180) * COS(o.latitude * PI() / 180) * POW(
					SIN(
						(
							120.182130556 * PI() / 180 - o.longitude * PI() / 180
						) / 2
					),
					2
				)
			)
		) * 1000
	) AS juli
FROM
	gis_video_surveillance o
ORDER BY
	juli ASC

 

posted on 2018-12-25 16:56  小小程序员的梦想  阅读(335)  评论(0)    收藏  举报

导航