2016-03-25 72 views
1

我有一个像{code: 'item code', desc: 'item desc'}项目的数组,我必须执行LIKE与他们比较;这与LIKE在SQL中的工作原理完全相同。如何做与redis比较字符串?

有没有办法用redis来做到这一点?

+0

我认为Redis的只与'KEYS'命令模式查找。但是,您始终可以使用Redis提供的Lua脚本界面来实现更复杂的操作。 – woozyking

+0

KEYS命令不应该在生产环境中使用。 Redis不支持像SQL那样的wildchar搜索。你需要以不同的方式构造你的数据: http://stackoverflow.com/questions/7604455/how-to-search-in-redis – Mino

回答

1

如果您使用的是有序集合有相同分数的所有项目,那么你可以使用ZSCAN命令以匹配全局样式模式。

例如:

redis> ZADD z 0 one 0 two 0 three 0 four 
(integer) 4 
redis> ZSCAN z 0 match *o* 
1) "0" 
2) 1) "four" 
    2) "0" 
    3) "one" 
    4) "0" 
    5) "two" 
    6) "0"