GEOADD重复添加时如果地理位置名称相同,该命令就会覆盖原有的经纬度的值,相当于是存在就进行修改。但是重复添加时返回的结果是不一样的,当数据不存在时(新增)返回结果为1,当结果存在时(修改)返回结果为0,虽然修改时返回结果为0,但是实际上是修改了的,下面做下演示:
本地:0>zrem Sicily Palermo
"1"
本地:0>GEOADD Sicily 13 38 Palermo
"1"
本地:0>GEOPOS Sicily Palermo
1) 1) "12.999999225139618"
2) "38.000000992563194"
本地:0>GEOADD Sicily 15 40 Palermo
"0"
本地:0>GEOPOS Sicily Palermo
1) 1) "14.999999105930328"
2) "39.999999910849162"
上面的演示数据虽然存在精度方面的问题,但是可以看到确实是完成了修改的。