我正在使用半径搜索创建应用程序,这是我从
学到的示例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(弧度(纬度))))AS距离;
当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))))AS距离;
MySQL输出的距离为NULL,为什么?我做错了吗?
我是如何解决的?对不起,我真的不擅长数学。
答案 0 :(得分:0)
基本SQL查询
SELECT * FROM table
您的查询中必须有一个MySql表,其中包含lat&作为领域。 即
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;