Redis-如何仅使用值在hmset中查找条目?

时间:2019-01-11 16:40:44

标签: redis

我需要管理有关帐户可用性的“一组”数据。到目前为止,我正在创建这样的SET:

 127.0.0.1:6379[2]> hmset accounts 73075 available
 OK
 127.0.0.1:6379[2]> hmset accounts 73076 reserved
 OK

127.0.0.1:6379[2]> hget accounts 73075 
"available"
127.0.0.1:6379[2]>

问题

  1. 如何查询以查找所有“可用”帐户?我一直在尝试在线查找一些示例,但是我空了。我可能使用错误的关键词在Google上搜索。我将继续尝试。
  2. 稍后,我需要扩展它,以便我不仅在说一个帐户“保留”,而且需要将其与名称相关联。想知道SET是否是执行此操作的正确方法。

编辑1

我刚刚发现了这个Redis finding hashes by field values

将尝试为自己创建另一个索引。但这是一个好方法吗?如果您在我的代码/概念中闻到一些有趣的东西,请告诉我。

编辑2

到目前为止,这是我根据上面的文章所获得的:

 127.0.0.1:6379[2]> sadd johndoe@yahoo.com 73075
 (integer) 1
 127.0.0.1:6379[2]> smembers johndoe@yahoo.com
 1) "73075"

我想这可以解决问题2,在以后的工作中,我可以找到所有John Doe的帐户。 但是我仍然不知道如何找到所有“可用”帐户。 我也可以为每个可用帐户创建一个索引。但是有更好的方法吗?

编辑3

也许这是一个更好的方法? 创建一个名为“ available”的SET并用所有帐户填充它。

 HMSET available 12345 dontneedthisfield

然后,在保留帐户后,将其添加到另一个名为“保留”的SET中:

 HMSET reserved 12345 johndoe
 HDEL available 12345

这是更好的方法吗?

0 个答案:

没有答案