我有一个哈希表,其键的模式为 USER_TEL,例如:
bob_123456 : Some address
mary_567894 : other address
john_123456 : third address
Run Code Online (Sandbox Code Playgroud)
现在,我想获取在其密钥中具有相同电话号码的所有用户的地址。
我想出的是:
tel = 123456
r.hmget('address_book', '*_%s' % tel)
Run Code Online (Sandbox Code Playgroud)
我得到[None]而不是值。
您应该使用HSCAN命令。
例如:
redis> HMSET address_book bob_123456 Address1 mary_567894 Address2 john_123456 Address3
OK
redis> HSCAN address_book 0 match *_123456
1) "0"
2) 1) "bob_123456"
2) "Address1"
3) "john_123456"
4) "Address3"
Run Code Online (Sandbox Code Playgroud)
Python实现:
r = Redis(....) #redis url
for address in r.hscan_iter('address_book', match='*_123456'):
print(address)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11890 次 |
| 最近记录: |