【发布时间】:2022-11-14 13:37:09
【问题描述】:
我有 JSON 数据(见下文),我使用“rpush”将其存储在 Redis 列表中,键为“person”。 防爆数据:
[
{ "name": "john", "age": 30, "role": "developer" },
{ "name": "smith", "age": 45, "role": "manager" },
{ "name": "ram", "age": 35, "role": "tester" },
]
现在当我使用lrange 人 0 -1,它给我的结果是'[object object]'。
因此,为了实际使用属性名称获取它们,我通过对它们进行字符串化并将它们解析回对象以使用对象属性来存储它们。
但是转换为字符串的问题是我无法使用任何属性对它们进行排序,比如姓名、年龄或角色。
我的问题是,如何将此 JSON 存储在 Redis 列表中并使用任何属性对其进行排序。
谢谢。
【问题讨论】:
-
您是否有理由不将它们存储为 JSON? Redis 有一个 RedisJSON 扩展,它也包含在 Redis Stack 中。
-
是的,我尝试使用 RedisJSON,但无法在我的服务器上启用它。
-
我建议尝试更多,用字符串类型的条目实现你想要做的事情是一个很大的痛苦。使用环境的任何详细信息搜索“redis 模块”或“启用 redis json”。
-
是的,我一直在努力。顺便说一句,我们在 RedisJSON 上有排序功能吗?我还看到 RedisJSON 仅适用于 Redis Enterprise Cloud 订阅。那正确吗?我没有。
-
我现在在我的服务器上启用了 RedisJSON。但是我找不到任何命令来对使用它存储的数据进行排序。