【轉載】〖SQL〗Access中時間操作語句
ACCESS語句:
select * from 資料表 where (DateDiff('d',日期欄位,Date())=0)
語法
DateDiff(interval, date1, date2 [, firstdayofweek] [, firstweekofyear] )
DateDiff 函式的語法包含以下引數 (引數:為操作、事件、方法、屬性、函式或過程提供資訊的值。):
引數 | 說明 |
---|---|
interval | 必選。該表示式為用於計算 date1 和 date2 之間的差的時間間隔。 |
date1, date2 | 必選。變數型(日期型)。表示兩個要用於計算的日期。 |
firstdayofweek | 可選。常量,指定一週的第一天。如果不指定,則預設為星期日。 |
firstweekofyear | 可選。常量,指定一年的第一週。如果不指定,則第一週預設為 1 月 1 日所在的周。 |
設定
interval 包含以下設定:
設定 | 說明 |
---|---|
yyyy | 年 |
q | 季度 |
m | 月 |
y | 某年的某一天 |
d | 天 |
w | 工作日 |
ww | 周 |
h | 時 |
n | 分 |
s | 秒 |
firstdayofweek 引數包含以下設定:
常量 | 值 | 說明 |
---|---|---|
vbUseSystem | 0 | 使用 NLS API 設定。 |
vbSunday | 1 | 星期日(預設) |
vbMonday | 2 | 星期一 |
vbTuesday | 3 | 星期二 |
vbWednesday | 4 | 星期三 |
vbThursday | 5 | 星期四 |
vbFriday | 6 | 星期五 |
vbSaturday | 7 | 星期六 |
常量 | 值 | 說明 |
---|---|---|
vbUseSystem | 0 | 使用 NLS API 設定。 |
vbFirstJan1 | 1 | 從 1 月 1 日所在的周開始(預設)。 |
vbFirstFourDays | 2 | 從至少包含新年中四天的第一週開始。 |
vbFirstFullWeek | 3 | 從一年的第一個全周開始。 |
註解
可以使用 DateDiff 函式確定在兩個日期之間存在多少指定的時間間隔。例如,可以使用 DateDiff 計算兩個日期之間的天數或今天到年末之間的週數。
若要計算 date1 和 date2 之間的天數,可以使用“某年的某一天”(“y”) 或“天”(“d”)。當 interval 為“工作日”(“w”) 時,DateDiff 返回兩個日期之間的週數。如果 date1 為星期一,則 DateDiff 會計算 date2 之前的星期一的個數。它會將 date2 計算在內,但不會將 date1 計算在內。但是,如果 interval 為“周”(“ww”),DateDiff 函式將返回兩個日期之間的日曆週數。它會計算 date1 和 date2 之間的星期日的個數。如果 date2 為星期日,則 DateDiff 會將其計算在內;但即使 date1 為星期日,也不會將其計算在內。
如果 date1 引用了比 date2 晚的時間點,則 DateDiff 函式返回一個負數。
firstdayofweek 引數會影響使用“w”和“ww”間隔符號的計算。
如果 date1 或 date2 為日期文字 (日期文字:具有有效格式的任意字元序列,兩邊由編號符號 (#) 括起。有效格式包括由程式碼的區域設定指定的日期格式或通用的日期格式。),則指定的年會成為日期的永久部分。但是,如果 date1 或 date2 括在雙引號 (" ") 中,並且省略了年份,則每次計算 date1 或 date2 表示式時,當前年份都會插入程式碼中。這樣即可編寫用於不同年份的程式碼。
將 12 月 31 日與來年的 1 月 1 日相比較時,對於“年”("yyyy"),即使僅過去一天,DateDiff 也返回 1。
註釋 對於 date1 和 date2,如果 Calendar 屬性設定為公曆,則提供的日期必須為公曆。如果日曆為回曆,則提供的日期必須為回曆。