私が使用しているプロジェクトでRedisを使用する必要があり、LUAスクリプトを使用して(または実際に)浮動小数点数で適切な数学演算と比較を行う方法があるかどうか疑問に思っていました。たとえば、フィールドがあり、それを別のフィールドで乗算し、それを 3 番目のフィールドと比較する必要があるとします。例えば
local staticVal = .2
local dynamicVal2 = redis.pcall('GET', 'dynamicVal2')
local calcVal = dynamicVal * staticVal
local compareVal = 100
if calcVal < compareVal then
return false
else
return true
これを行う方法はありますか、または別の言語から GET 呼び出しを行い、そこで比較を行う必要がありますか?
ありがとうございました
編集:
または、浮動小数点数を比較する機能が役立ちます。数値比較ではなく、辞書比較が行われているようです。
編集2:
SET val1 10.5
SET val2 3.5
EVAL "local val1 = redis.pcall('GET','val1'); local val2 = redis.pcall('GET','val2'); if val1 > val2 then return val1 else return val2 end" 0