【发布时间】:2019-07-30 19:34:41
【问题描述】:
运行此命令时收到错误消息:
redis-cli --eval myscript.lua myzset 3 "one"
错误信息:
(error) ERR Error running script (call to f_9c623c243d74e75a4fe64de7a6826b47f8d7
d400): @user_script:1: @user_script: 1: Lua redis() command arguments must be st
rings or integers
Lua 脚本:
local ans = redis.call('ZINCRBY', KEYS[1], ARGV[1], ARGV[2])
if tonumber(ans) <= 0 then
redis.call('ZREM', KEYS[1], ARGV[2])
end
return (tonumber(ans) < 1 and '-1' or ans)
目标是使用ZINCRBY 自动删除零值或负值。
我正在使用:
Windows 7 64 位 Redis 版本:3.2.100
您的帮助将不胜感激。
【问题讨论】:
-
试试
redis-cli --eval myscript.lua myzset , 3 "one"(注意它之前/之后的逗号和空格)。 -
@ItamarHaber 问题已解决,谢谢先生...您可以创建评论以便我将其标记为已解决吗?
标签: redis redis-cluster