[英]How can I write an SQLite query in C#?
首先,我想寫的是使用SQLite數據庫。 我有那張桌子:
CREATE TABLE Raty ( -- Installments
ID INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL UNIQUE,
RataPrognDataSplaty DATE, -- the projected date of repayment
RataDataWplaty DATE, -- date of payment
RataMonit DATE, -- that and below are reminder dates, when it's write up
RataWezw1 DATE, --
RataWezw2 DATE, --
RataWezwOstat DATE, --
RataWezwDoWydania DATE, --
RataWezwDoPracodawcy DATE --
);
我為貸款編寫程序,如果某些客戶不付款,我會設置要付款的提醒。
例如,我有一天的20個客戶列表,但今天沒有用不同的延遲時間(IN('7','14','28','42'))付款。 它們顯示在表格中。 我得到第一個,根據他不付款的天數(例如7天)寫提醒。 例如,在RataMonit列中,我寫了今天的日期。 這是主要問題,我希望這個客戶從清單20個客戶中消失,直到他付款或下次提醒-14天。
我寫了該查詢,但是沒有用。
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')) );
CAST(... AS INT)
返回一個數字。 '7'
是一個字符串。 這兩個永遠不會相等。
使用... IN (7, 14, 28, 42)
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.