我有一个包含字段和值的键。所有字段都有字符串值。 其中一个字段我希望它是一个表或集合或列表(意味着保存多个值)。该字段称为 zonetable 我只知道如何使用hset但据我所知它不能做我想要的。我想做那样的事情
hmset L0001:ad65ed38-66b0-46b4-955c-9ff4304e5c1a field1 blabla field2 blibli zonetable [1,2,3,4]
Key : L0001:ad65ed38-66b0-46b4-955c-9ff4304e5c1a
field1: "string value"
field2: "string value"
zonetable: [1,2,3,4] ---- the table
答案 0 :(得分:1)
也许你可以利用Json。使用json将您的表(列表或其他内容)序列化为json字符串,然后使用hset将其保存到redis中。
当你想要检索它时,首先从redis获取它,然后将它从json反序列化为list。
如果你使用python,你可以这样做:
table = json.dumps(zonetable)
redis.hset(Key, 'zonetable', table)
当你想要检索它时:
table = redis.hget(Key, 'zonetable')
zonetable = json.loads(table)
正如你所说,你使用native命令,你也可以这样做。
首先,使用python interpreter
将zonetable转换为json字符串>>> import json
>>> table = [1,2,3,4]
>>> json.dumps(table)
'[1, 2, 3, 4]'
然后在redis-cli中使用它
hmset L0001:ad65ed38-66b0-46b4-955c-9ff4304e5c1a field1 blabla field2 blibli zonetable '[1,2,3,4]'
是的,还有一件事我想说,如果你知道rule of how to convert object to json,你可以自己做。
答案 1 :(得分:0)