一尘不染

Redis通过字段值查找哈希

redis

使用Redis来创建“记录”时,可以创建具有多个字段的哈希。例如:

HMSET myhash field1 "Hello" field2 "World"
HMSET myhash2 field1 "Goodbye" field2 "World"

您可以通过了解键值来检索此值,但是我想知道有什么方法可以检索field2中所有具有“ World”的哈希值?


阅读 1216

收藏
2020-06-20

共1个答案

一尘不染

Redis中没有索引,并且不实现SQL。这是一个键值存储。您提供一把钥匙,就能为您带来价值。

也就是说,您可以通过自己维护二级索引来实现此目的。例如:

创建一条记录和一个索引条目

HMSET myhash field1 Hello field2 World
SADD field2_world myhash

更新记录,删除旧索引条目,创建新索引

SREM field2_world myhash
HMSET myhash field2 Mundo
SADD field2_mundo myhash

查找所有具有“世界”的记录 field2

SMEMBERS field2_world

希望您能明白。

2020-06-20