Redis中有序集(Sorted Set)判斷某個鍵的成員存在的設計

一般而言,Redis的ZSet提供了豐富的功能,可以形成諸多應用。

在Redis中,提供瞭如下諸多功能。

有序集(Sorted Set)


然而,目前並沒有提供判斷ZSet中某個鍵是否存在指定成員的函數,這個目前在網上看到都要自己寫相應的代碼。而這個工作發現了有個巧妙和替代方法。即採用zrank的方法來判斷是否存在。該函數接口的定義如下:

ZRANK key member

返回有序集key中成員member的排名。其中有序集成員按score值遞增(從小到大)順序排列。

排名以0爲底,也就是說,score值最小的成員排名爲0

使用ZREVRANK命令可以獲得成員按score值遞減(從大到小)排列的排名。


可以考慮,當這個排名不存在的情況下,即成員不存在。測試如下:



利用程序進行設計,結果如下: