在 Redis 中,DECR
命令用于将存储在指定键中的值减一。如果您想要为 DECR
命令设置一个默认值,可以使用 Lua 脚本来实现这一功能。以下是一个示例:
- 首先,创建一个 Lua 脚本文件,例如
decr_with_default.lua
,并在其中编写以下代码:
local key = KEYS[1] local default_value = https://www.yisu.com/ask/tonumber(ARGV[1]) or 0'GET', key) or '') local result = value - 1 if result < 0 then result = default_value end return result
这个脚本接受两个参数:一个是要操作的键,另一个是默认值。如果键不存在或者值为非数字,脚本将使用默认值。否则,它将执行 DECR
操作并返回结果。
- 将脚本上传到 Redis 服务器:
redis-cli --eval decr_with_default.lua mykey , 10
这将使用默认值 10 对键 mykey
执行 DECR
操作。
注意:在实际应用中,您可能需要根据您的需求和场景调整 Lua 脚本。