redis有序集合系列之一

2021-09-24 03:55:34 字數 2407 閱讀 3011

目錄

zend

zscore

zincrby

zcard

zcount

1.語法

zend key score member [[score member] [score member]...]

2.解析

將乙個或多個member元素及其score值加入到有序集key當中。

如果某個member已經是有序集的成員,那麼更新這個member的score值,並通過重新插入這個member元素,

來保證該member在正確的位置上。

score值可以是整數值或雙精度浮點數。

如果key不存在,則建立乙個空的有序集並執行zadd操作

當key存在但不是有序集型別時,返回乙個錯誤

2.4以前只能新增乙個元素

3.返回值

被成功新增的新成員的數量,不包括那些被更新的,已經存在的成員

4.例子

#新增單個元素

zadd lan 1 php

#新增多個元素

zadd lan 2 python 3 golang

zrange lan 0 -1 withscores

#新增已存在元素 且score不變

zadd lan 1 php

zrange lan 0 -1 withscores

#新增已存在元素,但是改變score值

zadd lan 4 php

zrange lan 0 -1 withscores

1.語法

zscore key member

2.解析

返回有序集key中,成員member的score值

如果member元素不是有序集key的成員,或key不存在,返回nil

3.返回值

member 成員的 score 值,以字串形式表示。

4.例子

zadd   salary  10000 peter 20000 sunny 3000 jack

zrange salary 0 -1 withscores

zscore salary  sunny

1.語法

zincrby key increment member

2.解析

為有序集key的成員member的score值加上增量increment

可以通過傳遞乙個負數值increment,讓score減去相應的值,比如zincrby key 5 member,

就是讓member的score值減去5

當key存在但不是有序集型別時,返回乙個錯誤

score值可以是整數值或雙精度浮點數。

3.返回值

member成員的新score值,以字串形式表示

4.例子

zscore salary sunny

zincrby salary 2000 sunny

1.語法

zcard key

2.解析

返回有序集key的基數

3.返回值

當key存在且是有序集型別時,返回有序集的基數.當key不存在時,返回0

4.例子

zadd salary 20000 sunny

zcard salary

zadd salary 15000 jack

zcard salary

exists student

zcard student

1.語法

zcount key min max

2.解析

返回有序集key中,score值在min和max之間的成員的數量

3.返回值

score值在min和max之間的成員數量

4.**示例

zrange salary 0 -1 withscores

zcount salary 10000 20000

zcount salary 18000 20000

redis有序集合系列之四

目錄 zunionstore zinterstore 1.語法 zunionstore destination numkeys key key.weights weight weight.aggregate sum min max 2.解析 計算給定的乙個或多個有序集的並集,其中給定key的數量必須...

Redis 有序集合

redis 有序集合和集合一樣也是string型別元素的集合,且不允許重複的成員。不同的是每個元素都會關聯乙個double型別的分數。redis正是通過分數來為集合中的成員進行從小到大的排序。有序集合的成員是唯一的,但分數 score 卻可以重複。集合是通過雜湊表實現的,所以新增,刪除,查詢的複雜度...

Redis有序集合

redis 有序集合和集合一樣也是string型別元素的集合,且不允許重複的成員。不同的是每個元素都會關聯乙個double型別的分數。redis正是通過分數來為集合中的成員進行從小到大的排序。有序集合的成員是唯一的,但分數 score 卻可以重複。集合是通過雜湊表實現的,所以新增,刪除,查詢的複雜度...