我的数据库用户可以将自己喜欢的位置添加到数据库中。该表包含GPS坐标和名称。我想最小化冗余,当用户尝试向DB
添加新位置时,请检查是否已存在。我肯定可以通过GPS
坐标。但是,我还必须检查位置的名称。因此,用户可以拼错相同的位置,因此我的检查应该容忍错误输入。另一方面,它们可能意味着别的东西。
这不是交互式的,所以没有用户反馈,我必须避免查询中的误报数量。有没有办法调整LIKE
词典编纂容忍度?
这是我想到的SQL代码:
SELECT id FROM Locations AS L WHERE L = :LocationName AND distance(L.lat,L.lng,:lat,:lng) < 100;
其中距离是以米为单位的GPS距离。