2011-11-30 44 views
6

我想弄清楚如何在已排序的集合上使用ZRANGEBYSCORE命令的結果並將結果保存爲redis中的新集合,我不希望數據出現回到客戶端。我知道可以在客戶端讀取結果,然後將結果作爲新的集合,但我不希望數據在客戶端和服務器之間來回傳輸。將ZRANGEBYSCORE的結果插入到一個集合中

基本上我有一個排序集'A'和一個常規集'B'。我想通過在'A'上運行ZRANGEBYSCORE來過濾排序後的集合中的值,然後將結果與'B'相交。希望這是有道理的。想知道我該怎麼做

回答

2

不幸的是,你不能這樣做。您可能想嘗試使用允許使用Lua腳本的穩定版本(目前非常穩定),您可以使用簡單的Lua腳本來完成此操作。

+1

難道你不能爲此目的顯示你的Lua腳本嗎? 您是否建議將ZRANGEBYSCORE的結果存儲到一個變量中,然後遍歷它,每一步都使用ZADD? 如果是這樣,這是非常緩慢的方式!不可接受的生產使用。希望你的意思是另一種方式=) – n0nSmoker

相關問題