zlexcount
1. 基本語法
zlexcount(key
, min:<string>
, max:<string>
, callback
)
key
, min:<string>
, max:<string>
, callback
) 功能與zrangebylex語法相似,有序集合中若成員分數相同,可強制依字典序(lexicographic ordering)排列成員,並透過min
、max
參數進一步篩選區間,並回傳區間內的成員數量。
2. 範例
(1) 創建一組分數相同的有序集合
client.del('zset:1');
const key1 = 'zset:1'
const members1 = ['c', 'a', 'C', 'A', 'B', 'b'];
const scores1 = [0, 0, 0, 0, 0, 0];
members1.forEach((mem, ind) => {
client.zadd(key1, scores1[ind], mem);
})
client.zrange(key1, 0, -1, (err, obj) =>{
console.log(key1, ':', obj);
});
zset:1 : [ 'A', 'B', 'C', 'a', 'b', 'c' ]
(2) 取得所有成員數量
client.zlexcount(key1, '-', '+', (err, obj) =>{
console.log('Output:', obj);
});
Output: 6
(3) 利用特殊符號「 ( 」、「 [ 」擷取集合區間的成員數量
client.zlexcount(key1, '(A', '[b', (err, obj) =>{
console.log('Output:', obj);
});
Output: 4
Last updated
Was this helpful?