MySQL 半径搜索
MySQL radius search
我正在制作一个带有半径搜索的应用程序,这是我从
中学到的例子
https://developers.google.com/maps/articles/phpsqlsearch_v3#findnearsql
以我为例
我愿意
SELECT (3959 * acos(cos(弧度(-37.814107)) * cos(弧度(lat)) * cos(弧度(lng) - 弧度(144.96327999999994)) + sin(弧度(- 37.814107)) * sin(弧度(lat)))) 作为距离;
当 lat = -37.8141070000,lng = 144.9632800000
SELECT (3959 * acos(cos(弧度(-37.814107)) * cos(弧度(-37.8141070000)) * cos(弧度(144.9632800000) - 弧度(144.96327999999994)) + sin(弧度( -37.814107)) * sin(弧度(-37.8141070000)))) 作为距离;
MySQL输出距离为NULL,为什么?我是不是做错了什么?
我该如何解决?不好意思我数学真的不行
基本SQL查询
SELECT * FROM table
您的查询中必须有一个 MySql table,以 lat 和 lng 作为字段。
即
SELECT (3959 * acos(cos(radians(-37.814107))
* cos(radians(lat)) * cos(radians(lng) - radians(144.96327999999994))
+ sin(radians(-37.814107))
* sin(radians(lat)))) AS distance FROM table;
我正在制作一个带有半径搜索的应用程序,这是我从
中学到的例子https://developers.google.com/maps/articles/phpsqlsearch_v3#findnearsql
以我为例
我愿意
SELECT (3959 * acos(cos(弧度(-37.814107)) * cos(弧度(lat)) * cos(弧度(lng) - 弧度(144.96327999999994)) + sin(弧度(- 37.814107)) * sin(弧度(lat)))) 作为距离;
当 lat = -37.8141070000,lng = 144.9632800000
SELECT (3959 * acos(cos(弧度(-37.814107)) * cos(弧度(-37.8141070000)) * cos(弧度(144.9632800000) - 弧度(144.96327999999994)) + sin(弧度( -37.814107)) * sin(弧度(-37.8141070000)))) 作为距离;
MySQL输出距离为NULL,为什么?我是不是做错了什么?
我该如何解决?不好意思我数学真的不行
基本SQL查询
SELECT * FROM table
您的查询中必须有一个 MySql table,以 lat 和 lng 作为字段。 即
SELECT (3959 * acos(cos(radians(-37.814107))
* cos(radians(lat)) * cos(radians(lng) - radians(144.96327999999994))
+ sin(radians(-37.814107))
* sin(radians(lat)))) AS distance FROM table;