如何知道一对FLOAT(11,7)主键是否已存在?
我有这些值lat:50.0077953和lng:-119.3953705
我做:
SELECT * FROM wp_geo_mashup_locations WHERE lat = '50.0077953' AND lng = '-119.395367'
自从这次成功以来,我做到了,
INSERT INTO wp_geo_mashup_locations (lat,lng) VALUES ('50.0077953', '-119.395367')
我明白了:
Duplicate entry '50.0077934--119.3953705' for key 2
答案 0 :(得分:0)
好吧,如果INSERT失败,你知道该对已经存在。
或者,在搜索时使用一些阈值,例如:
lat BETWEEN 50.0077953-0.00005 AND 50.0077953+0.00005.
注意:你已经玩了一下,直到找出正确的阈值(我不知道长坐标和纬度坐标所需的分辨率)。
注意:What is the ideal data type to use when storing latitude / longitudes in a MySQL database? - 人们建议在这里使用空间扩展,DECIMAL或FLOAT(10,6)/ FLOAT(9,6)。