access中時間日期查詢的一些總結


最近在維護一個老的系統,用的是access數據庫,但是客戶需要一個比較負責的查詢功能,涉及了去除周末,節假日設置,還有很多額為的特殊條件。

由於access數據庫不支持存儲過程,偽存儲過程又很不方便,所以最初打算用臨時表用后刪除的策略,后來拋棄了。不過還是先把相應的實現總結一下。

一、access中表的操作

1、創建表

[sql] create table new_table_name (名稱 類型,名稱 類型) [/sql]

常見的類型包括: int 整形 text 文本 DateTime 日期 money 貨幣

設置主鍵和自增: autoincrement(1,1)

2、刪除表

[sql] Drop table new_table_name [/sql]

3、插入記錄

[sql] INSERT INTO new_table_name (id,name) select orthertable.id,orthertable.name from orthertable [/sql]

二、日期查詢

[sql] DateValue(日期列) between #2013-2-1# and #2013-2-21# [/sql]

這里使用了DateValue這個函數,如果不用這個函數的話,這個語句就要變成: [sql] 日期列 between #2013-2-1# and #2013-2-21 23:59:59# [/sql]

很容易犯的一個錯誤就是日期區間的后一個日期沒有加“23:59:59”,這樣最后一天的數據無法查詢。


[sql]select * from tablename where weekday(startm) <> 1 and weekday(startm) <> 7[/sql]


weekday()函數可以獲取日期是星期幾,結果為1到7的數字,1和7代表周日和周六。

三、時間查詢

[sql] TimeValue(startm) between #09:00# AND #12:00# [/sql]

這里使用的是TimeValue函數。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM