From d89ad8c580bbfd7f85cf66518de8c2176685e354 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Florian=20=22flowdy=22=20He=C3=9F?= Date: Wed, 25 Jan 2017 22:35:15 +0100 Subject: [PATCH] Fixed calculation of Balance.even_until --- schema/views/04_Balance.sql | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/schema/views/04_Balance.sql b/schema/views/04_Balance.sql index e03e9ee..696e75d 100644 --- a/schema/views/04_Balance.sql +++ b/schema/views/04_Balance.sql @@ -36,12 +36,13 @@ CREATE VIEW Balance AS SELECT d.debtor AS account, max(d.date) AS until FROM Debit d - LEFT OUTER JOIN CurrentArrears ca ON d.debtor = ca.debtor - GROUP BY d.debtor, ca.debtor - HAVING COUNT( - -- Restricts the counting to the settled debts: - CASE d.value WHEN d.paid THEN 1 ELSE NULL END - ) -- Considers that there might be no current arrears: - AND d.date <= IFNULL( min(ca.date), '9999-99-99' ) + LEFT OUTER JOIN ( + SELECT debtor, min(date) uneven_from + FROM CurrentArrears + GROUP BY debtor + ) AS ca ON d.debtor=ca.debtor + WHERE d.date < IFNULL( ca.uneven_from, '9999-99-99' ) + GROUP BY d.debtor ) AS even ON Account.ID=even.account ; +