Redis的Sorted Set(有序集合)是一種存儲唯一元素的集合,其中的元素會根據其分數(score)進行自動排序。你可以使用SORT
命令對Sorted Set中的元素進行排序。
以下是使用SORT
命令對Sorted Set進行排序的基本語法:
SORT key [BY score] [LIMIT offset count] [GET pattern ...] [ASC|DESC] [WITHSCORES]
參數說明:
key
:Sorted Set的鍵名。BY score
:可選參數,用于指定根據哪個字段(即分數)進行排序。如果省略此參數,則默認按照分數進行升序排序。LIMIT offset count
:可選參數,用于限制排序后的結果數量。offset
表示從第幾個元素開始返回,count
表示返回的元素個數。GET pattern ...
:可選參數,用于獲取排序后元素的額外信息。pattern
是一個字符串模式,可以匹配Sorted Set中的元素。ASC|DESC
:可選參數,用于指定排序順序。ASC
表示升序排序(默認),DESC
表示降序排序。WITHSCORES
:可選參數,用于在結果中包含每個元素的分數。示例:
my_sorted_set
的Sorted Set按照分數進行升序排序:SORT my_sorted_set
my_sorted_set
的Sorted Set按照分數進行降序排序:SORT my_sorted_set DESC
my_sorted_set
的Sorted Set按照分數進行升序排序,并限制返回前3個元素:SORT my_sorted_set LIMIT 0 3
my_sorted_set
的Sorted Set按照分數進行升序排序,并返回每個元素的分數和值:SORT my_sorted_set WITHSCORES
my_sorted_set
的Sorted Set按照自定義字段field
進行升序排序:SORT my_sorted_set BY field ASC