Dzień Dobry!
Mam taką tabelę:
Raty (
ID INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL UNIQUE,
RataPrognDataSplaty DATE,
RataDataWplaty DATE,
RataMonit DATE,
RataWezw1 DATE,
RataWezw2 DATE,
RataWezwOstat DATE,
RataWezwDoWydania DATE,
RataWezwDoPracodawcy DATE
);
Piszę program do udzielania pożyczek, jeśli klient nie zapłaci wystawia mu się ponaglenie do zapłaty.
Jak wystawię ponaglenie, a mam ich kilka na dzień, to chciałbym, aby po wystawieniu jakiegoś znikało ono do czasu zapłaty, albo do czasu wystawienia kolejnego.
Ułożyłem takie zapytanie:
SELECT *
FROM Raty
WHERE RataDataWplaty IS NULL AND
cast(cast((strftime('%s', 'now') - strftime('%s', RataPrognDataSplaty)) AS real)/60/60/24 as int) IN ('7', '14', '28', '42')
AND (
(RataWezwDoPracodawcy IS NULL OR RataWezwDoPracodawcy == date('now')) OR
(RataWezwDoWydania IS NULL OR RataWezwDoWydania == date('now')) OR
(RataWezwOstat IS NULL OR RataWezwOstat == date('now')) OR
(RataWezw2 IS NULL OR RataWezw2 == date('now')) OR
(RataWezw1 IS NULL OR RataWezw1 == date('now')) OR
(RataMonit IS NULL OR RataMonit == date('now')) )
;
Jednak nie spełnia ono moich oczekiwań, bo albo pokazuje mi np. już dzisiaj wystawione, albo nie pokazuje nic.