簡體   English   中英

如何在C#中編寫SQLite查詢?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM