您只能在HAVINg子句中使用聚合进行比较:
GROUP BY ... HAVINg SUM(cash) > 500
该
HAVINg子句要求您定义GROUP BY子句。
要获得第一行,其中所有先前现金的总和都大于某个值,请使用:
SELECt y.id, y.cash FROM (SELECt t.id, t.cash, (SELECT SUM(x.cash) FROM TABLE x WHERe x.id <= t.id) AS running_total FROM TABLE t ORDER BY t.id) y WHERe y.running_total > 500ORDER BY y.id LIMIT 1
由于聚合函数发生在子查询中,因此可以在WHERe子句中引用其别名。



