Redis 获取列表项并追加前缀

Redis get list items and append prefix

我在 redis 中有一个字符串列表 -

LPUSH keys 1 2 3 4

而且阅读非常简单 -

LRANGE keys 0 3

1) "4"
2) "3"
3) "2"
4) "1"

如何从每个值前面都有一些指定字符串的列表中读取?在上面的场景中,我希望我的输出为 -

1) "Key:4"
2) "Key:3"
3) "Key:2"
4) "Key:1"

您将需要使用 lua - https://redis.io/commands/eval

您可以搜索lua文档,根据需要修改下面的代码。

这是一个例子:

127.0.0.1:6379> LPUSH keys 1 2 3 4
(integer) 4
127.0.0.1:6379> LRANGE keys 0 3
1) "4"
2) "3"
3) "2"
4) "1"
127.0.0.1:6379> EVAL 'local res = {} local ttt=redis.call("LRANGE", "keys", "0", "10") for k, v in pairs(ttt) do table.insert(res, "Key:" .. v) end return res' 0
1) "Key:4"
2) "Key:3"
3) "Key:2"
4) "Key:1"