2012-12-10 23 views
1

由於zrange「字典順序用於平分的元素」我該如何解決這個問題?Redis zrange將整數值整數

例如:

zadd s 0 1 
zadd s 0 2 
zadd s 0 10 
zadd s 0 3 

zrange s 0 4 
1) 1 
2) 10 
3) 2 
4) 3 

我如何使它的排序是這樣的(OFC的同時兌現了評分):

1) 1 
2) 2 
3) 3 
4) 10 

回答

1

你不能改變的字典順序。

但是,您可以存儲一個字典順序與數字順序相匹配的值。爲實例,而不是存儲:

1 
2 
12 
15 
122 
321 

你可以存儲:

A1 
A2 
B12 
B15 
C122 
C321 

第一個字母是隻是一個指示的數值的數字(A = 1的數碼,B = 2,等等......),所以數字和字典順序是一樣的。客戶端應用程序可以輕鬆地在存儲/檢索時添加/刪除此前綴。

zadd s 0 A1 
zadd s 0 A2 
zadd s 0 B10 
zadd s 0 A3 

zrange s 0 4 
1) "A1" 
2) "A2" 
3) "A3" 
4) "B10" 
+0

非常感謝你,我試圖弄清楚這種方式,但沒有想到這個! – user1868892