使用表達式生成器,我建了一個switch語句看起來像這樣:的MS Access - 使用時間值沒有日期值
Switch([Time]>=#12:00:00 AM# And [Time]<#7:00:00 AM#,"Before 7 am",
[Time]>=#7:00:00 AM# And [Time]<#10:00:00 AM#,"7 am - 9:59 am",
[Time]>=#10:00:00 AM# And [Time]<#5:00:00 PM#,"10 am - 4:59 pm",
[Time]>=#5:00:00 PM# And [Time]<=#9:00:00 PM#,"5 pm - 9 pm",
[Time]>#9:00:00 PM# And [Time]<#11:59:00 PM#,"After 9 pm")
但是,我發現我的查詢是不工作的權利,所以我查了SQL 。奇怪的是,它看起來像這樣:
Switch([Time]>=#12/30/1899# And [Time]<#12/30/1899 7:0:0#,"Before 7 am",
[Time]>=#12/30/1899 7:0:0# And [Time]<#12/30/1899 10:0:0#,"7 am - 9:59 am",
[Time]>=#12/30/1899 10:0:0# And [Time]<#12/30/1899 17:0:0#,"10 am - 4:59 pm",
[Time]>=#12/30/1899 17:0:0# And [Time]<=#12/30/1899 21:0:0#,"5 pm - 9 pm",
[Time]>#12/30/1899 21:0:0# And [Time]<#12/30/1899 23:59:0#,"After 9 pm")
AS Time_Range
因此,它看起來像訪問被轉換到這些日期/時間值,但我只需要時間。有沒有辦法做到這一點?
什麼寫作t的自定義函數他呢?我認爲它會更乾淨。至於你的問題,真的沒有日期/時間這樣的東西不包含某種日期部分。您可以考慮合併您的日期字段(假設您有),以便日期正確。理想情況下,我建議將日期和時間放在同一個字段中,併爲其指定一個不是MS Access中的保留字或您正在使用的RDBMS的名稱,可能類似於DateTimeEntered。 – HK1