2017-02-28 21 views
0

我的第一次約會我的系統計算到期的與SQL

HELP ME WITH THIS LOGIC

,你可以在這裏看到我的第一次詢問如何將我說,我的EXPDATE表等於這個電流做一個日期計算日期?那麼如果是這樣msgbox我「你的項目已過期」

我的第二個查詢我想設置一個msgbox在我的expdate三個月前msgbox我?

繼承人什麼,我試圖做

cn.Open() 
Dim query As String 
query = "Select * from tblmeds where TIMESTAMPDIFF(MONTH,`expdate`,CURRENT_TIMESTAMP())< 1" 
command = New MySqlCommand(query, cn) 
readers = command.ExecuteReader 

Dim count As Integer 
count = 0 
While readers.Read 
    count = count + 1 
End While 

cn.Close() 

If count = 1 Then 
    msgbox "you have a expired items" 
else 
    "no items are at risk" 

PS:我目前使用phpMyAdmin作爲我的數據庫

+2

請不要發佈代碼圖片 - 我們無法對圖片進行任何操作。將實際代碼粘貼到您的問題中... – Siyual

+2

您使用的是哪個數據庫?還提供樣本數據和期望的結果。 –

+0

GETDATE()適用於MS SQL Server。 current_date for Postgresql。 SYSDATE for Oracle, NOW()for MySQL –

回答

1

假設的SQL Server ...

減去到期日3個月比較(如果涉及多個時區),否則您可以使用getDate()

SELECT EXPDATE 
FROM tblMeds 
WHERE Dateadd(Month, -3,expDate) < = getutcdate() 
+0

它的PHPMYADMIN,我認爲這是SQL的權利? – VAN

0

如果你改變你查詢到

query = "Select count(*) as cnt from tblmeds where TIMESTAMPDIFF(MONTH,`expdate`,CURRENT_TIMESTAMP())< 1" 

那麼你就不需要一看就計算行數,服務器可以做到這一點這是更快。