我在mySql数据库中有一组带地理标记的图片。您可以将我的图片表视为:
create table `Pictures` (
location Point NOT NULL,
timeCreated timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
SPATIAL INDEX(location)
)ENGINE= MyISAM DEFAULT CHARSET=utf8;
我打算根据图片的位置执行K-Nearest Neighbor算法。比如说,如果K = 10,选择地理上最接近用户位置的10张图片。
感谢您的建议。
答案 0 :(得分:1)
请查看以下链接。我相信它通过单独使用MySQL查询来解决您遇到的同样问题(如果您的问题是找到距离用户最近的10张图片)。
MySQL Great Circle Distance (Haversine formula)
我希望这可以帮助您解决问题。
答案 1 :(得分:0)
更准确,更准确的答复是,到目前为止,neither MySQL nor MariaDB support KNN。尽管PostGIS是对PostgreSQL的免费空间扩展。