我有几个有名字和身份的山体。
我把这些东西存储成这样
HMSET Mountain:1 id "1" name "Mo1"
HMSET Mountain:2 id "2" name "Mo2"
HMSET Mountain:3 id "3" name "Mo2"我怎么才能买到所有的山体?或者有什么更好的方法将对象存储在redis中?
发布于 2014-07-08 11:25:39
您应该使用2命令来完成该操作:
KEYS Mountain:*
HGETALL <everykeys>但是,如果可以的话,最好不要使用KEYS命令,所以您可以这样做:
HMSET Mountain:1 id "1" name "Mo1"
SADD Montains Mountain:1
HMSET Mountain:2 id "2" name "Mo2"
SADD Montains Mountain:2
HMSET Mountain:3 id "3" name "Mo3"
SADD Montains Mountain:3得到它:
SMEMBERS Mountain
HGETALL <everykeys>Redis是一个具有额外数据类型的键/值系统,因此您必须构建索引以便具有名称索引--例如,如果名称是唯一的:
HSET Mountains:IdByName "Mo3" 3你会得到身份证:
HGET Mountains:IdByName "Mo3"对于非唯一的,让我们再次使用set
SADD Mountains:IdByName:Mo3 3你会增加钥匙的数量,那就是为什么不推荐钥匙,因为太贵了。
下一步是使用lua脚本从/和索引中设置/设置散列
https://stackoverflow.com/questions/24630297
复制相似问题