有人可以告诉我为什么我运行这个简单查询时得到的最后两列之间存在差异?
在此示例中,最后一列与第三列相同,后退一个位置,第一行包含 NULL 。
SELECT
SUM(PRICE),
@sum := SUM(PRICE) ,
ln(SUM(PRICE)),
ln(@sum)
FROM
TABLE
group by ISIN
答案 0 :(得分:3)
这是因为在创建每个组的值之后,@sum
变量被赋值。在最后一列中,@sum
的当前值用于创建值,因此将是从前一组分配的值。