Database 从相互靠近的位置的数据库表中删除记录
我需要做一些数据库管理工作 我有一个数据库表,其中包括位置(包括纬度和经度等)。它被用来生成地理围栏(如果你感兴趣的话) 作为内务管理的一部分,我希望从数据库中删除“接近”其他记录的位置记录(即,如果表中的两条记录彼此之间的距离在250米以内,我将删除创建的第一条记录,并保留第二条记录)Database 从相互靠近的位置的数据库表中删除记录,database,sqlite,duplicates,Database,Sqlite,Duplicates,我需要做一些数据库管理工作 我有一个数据库表,其中包括位置(包括纬度和经度等)。它被用来生成地理围栏(如果你感兴趣的话) 作为内务管理的一部分,我希望从数据库中删除“接近”其他记录的位置记录(即,如果表中的两条记录彼此之间的距离在250米以内,我将删除创建的第一条记录,并保留第二条记录) 我实现这一点的算法是循环遍历每个记录(我称之为根记录),对于每个根记录,循环遍历表中的每个其他记录(我称之为检查记录),计算两个位置之间的距离,以及您的实现是否具有?ooooooooh!!现在看起来很有趣。我什
我实现这一点的算法是循环遍历每个记录(我称之为根记录),对于每个根记录,循环遍历表中的每个其他记录(我称之为检查记录),计算两个位置之间的距离,以及您的实现是否具有?ooooooooh!!现在看起来很有趣。我什么都不知道,但我要读点书。谢谢:)所以你逃过了复制品的厄运:)如果你看得够仔细的话,总会有复制品的(我看了!)。再次感谢你的链接。我有几件事要考虑(首先不是写数据库附近的位置!)。。。为了回答您的第一条评论,我正在为Android开发,看起来为了使用R*Tree模块,我必须构建自己的sqlite实现。我不想这么做。我想我将使用“复制”链接中的一些内容,而不是从一开始就将接近的位置写入数据库。谢谢你的帮助。
while (rootLoop.moveToNext) {
while (checkLoop.moveToNext) {
distance = getDistanceBetween(rootLocation, checkLocation);
if (distance < 250) delete(rootRecord);
}
}