Intereting Posts

Как искать ключи со значением? Например, получите все KEYS, где значение «somevalue»

redis> SMEMBERS CO:1:A 1) "1" 2) "2" redis> SMEMBERS CO:2:A 1) "1" 2) "5" 3) "6" redis> SMEMBERS CO:3:A 1) "5" redis> SMEMBERS CO:4:A 1) "1" 

Теперь я хочу найти ключи, где существует значение 1

Если я выполняю поиск со значениями 1, тогда ключи результата будут CO:1:A, CO:2:A и CO:4:A

Как это получить?

Redis не является реляционной базой данных. Вы должны предвидеть этот путь доступа и поддерживать обратный индекс.

 # This is your index SADD CO:1:A 1 2 SADD CO:2:A 1 5 6 SADD CO:3:A 5 SADD CO:4:A 1 # Here is the reverse index SADD REV:1 1 2 4 SADD REV:2 1 SADD REV:5 2 3 SADD REV:6 2 

Теперь вы можете запросить обратный путь:

 SMEMBERS REV:1 1) "1" 2) "2" 3) "4" ... meaning CO:1:A. CO:2:A, CO:4:A