SORT_RO

返回列表、集合或有序集合的已排序元素。

语法

SORT RO key [BY pattern] [LIMIT offset count] [GET pattern [GET pattern ...]] [ASC | DESC] [ALPHA]

引入版本:7.0.0

复杂度摘要:O(N+M*log(M)

SORT 命令的只读变体。它与原始 SORT 完全相同,但拒绝 STORE 选项,并且可以安全地在只读副本中使用。

由于原始 SORT 有一个 STORE 选项,因此从技术上来说,它在 Redis 命令表中被标记为写入命令。因此,即使连接处于只读模式,Redis 集群中的只读副本也会将其重定向到主实例(请参阅 Redis 集群的 READONLY 命令)。

引入 SORT_RO 变体是为了允许只读副本中的 SORT 行为,而不破坏命令标志的兼容性。

更多详情请参见原始SORT。

必需参数

key

要排序的键的名称。它可以保存列表、集合或有序集合。

可选参数

BY pattern

按 pattern 匹配的外键值(每个 * 被一个元素替换)排序,而不是按元素本身排序。没有 * 的模式或对所有元素解析相同的哈希字段模式会跳过排序。

LIMIT offset count

返回排序结果的切片:跳过 offset 元素并返回到 count。

GET pattern [GET pattern ...]

返回每个排序元素的 pattern 匹配的外键值。使用 GET # 还可以返回元素本身。可以多次给予。

ASC | DESC

按升序(ASC,默认)或降序(DESC)排序。

ALPHA

按字典顺序而不是数字对元素进行排序。

示例

SORT_RO mylist BY weight_*->fieldname GET object_*->fieldname

Redis Software 与 Redis Cloud 兼容性

Redis
软件
Redis
Cloud
说明
✅ 标准
✅ 主动-主动
✅ 标准
✅ 主动-主动

返回值

RESP2

数组回复:已排序元素的列表。

RESP3

数组回复:已排序元素的列表。

资料来源:Redis 官方 SORT_RO 文档;中文内容参考 Redis 文档许可。