如何使用sort对哈希进行排序?

2ic8powd  于 2021-06-09  发布在  Redis
关注(0)|答案(1)|浏览(414)

我想知道如何用redis-py对哈希进行排序。
我有以下代码:

redis_db.hmset('data:1',{'n':1, 'user': 'a'})
redis_db.hmset('data:2',{'n':4, 'user': 'b'})
redis_db.hmset('data:3',{'n':5, 'user': 'c'})
redis_db.hmset('data:4',{'n':2, 'user': 'd'})
redis_db.hmset('data:5',{'n':3, 'user': 'e'})
redis_db.sort('data*', by='data:*->n', get=['data:*->n'])

但我只能得到一个空数组,为什么?如何获得n个值和user的排序列表?
谢谢。

gwo2fgha

gwo2fgha1#

您得到了一个空数组,因为键数据*不存在。
只能对列表、集合或已排序集合进行排序。因此,首先,您需要将数据索引,例如1、2、3、4、5,放入列表、集合或排序集合中。然后按哈希中的值对其排序。

LPUSH indexes 1 2 3 4 5

SORT indexes by data:*->n get data:*->user

相关问题