2017-05-24 68 views
0

我有一個項目列表,我想查看他們最近發生的日期。我目前正在使用這個查詢。在訪問中的日期查詢突然停止工作

SELECT Cleaning1, Max(Date1) AS most_recent 
FROM CleaningLog 
GROUP BY Cleaning1; 

它昨天在我工作時工作,但突然停止工作。它不會顯示最近的日期某些項目發生的事件。我想知道爲什麼這會突然停止工作。我將日期參數添加到我使用此代碼進行的四個查詢中。當停止工作正常,我決定創建一個測試查詢,沒有日期參數,它仍然不會顯示我最近的事件,我輸入英寸

我試着玩弄<,>,= =在代碼的日期部分簽名,但似乎沒有捕獲我今天上午添加的日期。我應該提到這是我爲有一個日期參數代碼:

SELECT Cleaning1, Max(Date1) AS most_recent 
FROM CleaningLog 
GROUP BY Cleaning1 
HAVING Max(Date1) < Now() - 30; 

你認爲會是這個查詢的潛在原因,停止採集日期?我的數據庫中的日期不是按時間順序排列的,因爲我必須手動輸入過去發生的事件。任何幫助,將不勝感激!

enter image description here

enter image description here

現在看來似乎不會使用ID 89後它工作得很好,昨天下午的數據。今天早上我從ID 59加入。所有的數據都加入同樣的方式,通過形式:

enter image description here

+0

日期的內部順序是無關緊要的,因爲有沒有內部命令。您應該向我們展示可讓您的問題可重現的示例數據。在我的頭頂,也許你輸入了一些不好的數據。 –

+0

另外,向我們展示CleaningLog表的設計。通常,使用不正確的列類型可能會導致此類錯誤 –

+0

仔細檢查日期格式並檢查日/月交換 – JGH

回答

1

轉換文本日期到真正的日期:

SELECT 
    Cleaning1, 
    Max(CDate(Date1)) AS most_recent 
FROM 
    CleaningLog 
GROUP BY 
    Cleaning1 
HAVING 
    Max(CDate(Date1)) < Date() - 30;