我有一张类似的表:
+----+--------+--------+------------+-----------+
| id | amount | rif_id | date | is_closed |
+----+--------+--------+------------+-----------+
| 1 | 20 | NULL | 2017-11-12 | 1 |
| 2 | -5 | 1 | 2017-11-13 | NULL |
| 3 | -10 | 1 | 2017-11-24 | NULL |
| 4 | 7 | NULL | 2017-11-25 | 0 |
| 5 | -5 | 1 | 2017-11-26 | NULL |
| 6 | -5 | 4 | 2017-11-28 | NULL |
| 7 | 11.20 | NULL | 2017-11-30 | 0 |
+----+--------+--------+------------+-----------+
我需要得到一个更近期ID的列表,其中sum的数量等于零,参考rif_id。
在我的例子中,我需要得到这个结果:
+----+--------+--------+------------+-----------+
| id | amount | rif_id | date | is_closed |
+----+--------+--------+------------+-----------+
| 5 | -5 | 1 | 2017-11-26 | NULL |
+----+--------+--------+------------+-----------+
我需要ID 5,因为这个-5的金额(ID为1,2和3)恰好为零。
仅供参考,当在表格中插入最后一笔交易时,“is_closed”列将更新为1。实际上,当插入ID 5时,我的脚本用“is_closed”计算并更新ID 1 1.不知道是否对SQL SELECT create很重要。
我想你可以这样做:
ref_id
的记录,并使id <
成为当前记录sum(t2.amount) = 0
Order by id desc Limit 1