summaryrefslogtreecommitdiffstats
path: root/iredis/data/commands/spop.md
diff options
context:
space:
mode:
Diffstat (limited to 'iredis/data/commands/spop.md')
-rw-r--r--iredis/data/commands/spop.md30
1 files changed, 16 insertions, 14 deletions
diff --git a/iredis/data/commands/spop.md b/iredis/data/commands/spop.md
index 76b1c89..057a025 100644
--- a/iredis/data/commands/spop.md
+++ b/iredis/data/commands/spop.md
@@ -1,14 +1,26 @@
-Removes and returns one or more random elements from the set value store at
+Removes and returns one or more random members from the set value store at
`key`.
This operation is similar to `SRANDMEMBER`, that returns one or more random
elements from a set but does not remove it.
-The `count` argument is available since version 3.2.
+By default, the command pops a single member from the set. When provided with
+the optional `count` argument, the reply will consist of up to `count` members,
+depending on the set's cardinality.
@return
-@bulk-string-reply: the removed element, or `nil` when `key` does not exist.
+When called without the `count` argument:
+
+@bulk-string-reply: the removed member, or `nil` when `key` does not exist.
+
+When called with the `count` argument:
+
+@array-reply: the removed members, or an empty array when `key` does not exist.
+
+@history
+
+- `>= 3.2`: Added the `count` argument.
@examples
@@ -24,18 +36,8 @@ SPOP myset 3
SMEMBERS myset
```
-## Specification of the behavior when count is passed
-
-If count is bigger than the number of elements inside the Set, the command will
-only return the whole set without additional elements.
-
## Distribution of returned elements
Note that this command is not suitable when you need a guaranteed uniform
distribution of the returned elements. For more information about the algorithms
-used for SPOP, look up both the Knuth sampling and Floyd sampling algorithms.
-
-## Count argument extension
-
-Redis 3.2 introduced an optional `count` argument that can be passed to `SPOP`
-in order to retrieve multiple elements in a single call.
+used for `SPOP`, look up both the Knuth sampling and Floyd sampling algorithms.