我在MySQL 5.7中进行了一些繁重的计算,我试图在语句中重用计算值,以节省计算能力。
现在,下面的最小示例使用保存在变量@my中的结果进行计算。变量的值是另一种计算的基础:
SELECT
@my := SUM (test) as something,
@my / 10 AS Output
这样做的结果是,每次执行它时,它都会使用上一次执行时的@my值——上一次选择,而不是当前选择。
如何在每个语句上重置变量,或者是否有更好的表示法使用当前执行的计算?
您可以在这样的JOIN中轻松初始化变量:
选择字段1,@my:=field2*10,。。。。从您的桌子作为INIT加入(SELECT@my:=0,@other:=99(;