2016-08-31 98 views
2

Redis 3.2具有geohash類型。如何從redis geohash中刪除項目?

GEOADD is used to add keys:

> GEOADD restaurants 32.0 34.0 Falafel 
(integer) 1 
> GEOADD restaurants 32.1 34.1 Pizza 
(integer) 1 

GEORADIUS是用來做地理查詢:

> GEORADIUS restaurants 32.05 34.05 100 km WITHDIST 
1) 1) "Falafel" 
    2) "7.2230" 
2) 1) "Pizza" 
    2) "7.2213" 

然而,HDEL似乎不工作:

> HDEL restaurants Falafel 
(error) WRONGTYPE Operation against a key holding the wrong kind of value 

如何刪除,或者將TTL設置爲地理位置內的關鍵字SH?

回答

2

Geohashes排序套,所以right command is ZREM

> ZREM restaurants Falafel 
(integer) 1 

> GEORADIUS restaurants 32.05 34.05 100 km WITHDIST 
1) 1) "Pizza" 
    2) "7.2213" 
+0

....並呼籲採取具體原因:) –

+0

我缺少什麼geosets?它僅僅是命名:[其實,在底層沒有任何新的數據結構:GeoSet只是一個Redis SortedSet](http://cristian.regolo.cc/2015/07/07/introducing-the-geo- api-in-redis.html) –

+0

不,你不會錯過。雖然你忘了回答你關於TTL的問題(對於結構中的成員沒有TTL) –