Latest web development tutorials

Redis Srandmember 命令

Redis集合(Set)

Redis Srandmember 命令用於返回集合中的一個隨機元素。

從Redis 2.6 版本開始, Srandmember 命令接受可選的count 參數:

  • 如果count 為正數,且小於集合基數,那麼命令返回一個包含count 個元素的數組,數組中的元素各不相同。 如果count 大於等於集合基數,那麼返回整個集合。
  • 如果count 為負數,那麼命令返回一個數組,數組中的元素可能會重複出現多次,而數組的長度為count 的絕對值。

該操作和SPOP 相似,但SPOP 將隨機元素從集合中移除並返回,而Srandmember 則僅僅返回隨機元素,而不對集合進行任何改動。

語法

redis Srandmember 命令基本語法如下:

redis 127.0.0.1:6379> SRANDMEMBER KEY [count]

可用版本

>= 1.0.0

返回值

只提供集合key 參數時,返回一個元素;如果集合為空,返回nil 。 如果提供了count 參數,那麼返回一個數組;如果集合為空,返回空數組。

實例

redis 127.0.0.1:6379> SADD myset1 "hello"
(integer) 1
redis 127.0.0.1:6379> SADD myset1 "world"
(integer) 1
redis 127.0.0.1:6379> SADD myset1 "bar"
(integer) 1
redis 127.0.0.1:6379> SRANDMEMBER myset1
"bar"
redis 127.0.0.1:6379> SRANDMEMBER myset1 2
1) "Hello"
2) "world"

Redis集合(Set)