5
可以说我有一组城市在世界上像这样:可以Redis做前缀匹配吗?
EUKLOND
EUKMANC
EUKEDIN
EITROME
EITMILA
EITNAPE
EFRPARI
EFRAVIG
EFRBRES
当第一个字母是大陆,未来两年是国家和尾4是一个简短的城市名称。
我希望能够通过传递“E”来搜索这个集合,该集合将返回所有条目或EIT并检索意大利或EFRPARI的所有条目并获取巴黎条目。
这是我可以用Redis做的事吗?
谢谢Ofer,我读过这篇文章,但我似乎无法弄清作者到达的方式:“zrange zset 6 -1”。他怎么知道他需要做6-1切片?如果我在欧洲国家拥有不同数量的城市,我该如何计算“zrange zset X -1”中的X? – jdoig 2012-02-19 21:33:23
首先,他通过运行'zrank zset fo'来查询'fo'的位置。他得到了答案'5'。然后,他询问从6(5 + 1)中获得所有项目,直到最后。他运行'zrange zset 6 -1'。当你使用负数时,它意味着'从最后'。 -1表示'有序集合的最后一个元素'(参见[redis文档](http://redis.io/commands/zrange))。 – 2012-02-20 06:37:29
是的,这是我所设想的。从“fo”到“list of end”对我来说不是一个可行的方法。上面的数据只是一个例子。由于这可能是大量的数据(集合可以容纳大约40亿项IRC),我无法真正承担从某个任意点返回到该集合的末尾。 – jdoig 2012-02-20 06:51:04