enter image description here我正在創建兩個值的查詢,一個週期號和相應的日期。期間是與我們的月份相似但不相同的會計期間。日期大體上是正確的,但是我認爲我會用WHERE語句清理一些不一致的地方。WHERE子句中的SQL-Server日期時間問題
例如,日期2015年4月1日所屬期3,但在這兩個週期3和週期4顯示了爲了解決這個問題,我想我會創建一個WHERE語句中指出:
SELECT DISTINCT table1.period,
table1.datetime
FROM table1
WHERE table1.period <> 4 AND table1.datetime <> '4/1/2015'
這帶走了所有的4期而不是我需要的。我也嘗試了日期時間語法:
AND table1.datetime <> '20150401 00:00:00.000'
兩種語法都有相同的結果。我在SQL方面相當缺乏經驗,並一直討厭處理日期時間值,所以任何幫助都會很棒。
-EDIT-忘記將單引號添加到第一個datetime WHERE子句中。
這是table1.datetime的類型? –
@alex它是一個日期時間數據類型,而period是一個字符串。 – GHINOTE
它有日期的時間值嗎?比較日期字符串時,您可能需要將日期轉換爲日期。如'2015年4月1日01:00:00.000'不等於'2015年4月1日',但CAST('4/1/2015 01:00:00.000'AS DATE)。 – BinaryPatrick