スポンサーリンク

2007-10-23

Tips97 - SQL文 経過時間、経過日数を求める DATEDIFF関数

dim SQL as String
dim rs As Recordset
SQL = "SELECT datediff('d',日付フィールド1,日付フィールド2) FROM テーブル名"
Set rs = CurrentDb.OpenRecordset(SQL)

構文は DateDiff(interval, date1, date2) になります。
intervalは算出する単位を指定します。下記になります。
yyyy : 年
q : 四半期
m : 月
y : 年間通算日
d : 日
w : 週日
ww :週
h : 時
n : 分
s: 秒
date1とdate2は計算する2つの日付を指定します。

使用例:
更新日:2007/10/11 、 登録日:2007/03/05
SQL = "SELECT datediff('d',更新日,登録日) FROM テーブル名" の場合 220 が返ります。
SQL = "SELECT datediff('m',更新日,登録日) FROM テーブル名" の場合 7 が返ります。
SQL = "SELECT datediff('yyyy',更新日,登録日) FROM テーブル名" の場合 0 が返ります。