【SQL】 DATEPART関数の使い方(日付要素を数値で取得する)

DATEPART関数は、以下で使用できます。
MS-SQL MS-Access
DATEPART関数 : 書式
書式 DATEPART( datepart, date )
引数 datepart:取得する要素の指定
date:日付
戻値 指定された要素の値
引数 datepart:取得する要素の指定
date:日付
戻値 指定された要素の値
DATEPART関数 : 解説
DATEPART関数は、日付の中から、引数「datepart」で指定した日付の要素を数値として返す関数です。日付の要素で指定できるのは、DATENAME関数の表と同じです。
| 日付要素 | datepart | datepart省略形 |
| 年 | year | yy / yyyy |
| 四半期 | quarter | qq / q |
| 月 | month | mm / m |
| 年始からの日数 | dayofyear | dy / y |
| 日 | day | dd / d |
| 週 | week | wk / ww |
| 曜日 | weekday | dw |
| 時 | hour | hh |
| 分 | minute | mi / n |
| 秒 | second | ss / s |
| ミリ秒 | millisecond | ms |
datepartに週の日付要素である「weekday」を指定した場合には、曜日の番号を取得することになります。曜日と数値の対応は次のようになります。
| 曜日 | 値 |
| 日曜日 | 1 |
| 月曜日 | 2 |
| 火曜日 | 3 |
| 水曜日 | 4 |
| 木曜日 | 5 |
| 金曜日 | 6 |
| 土曜日 | 7 |
DATEPART関数 : 使用例 (日付を数値で取得)
SQL文 SELECT 日付, DATEPART(day, 日付) 数値日付 FROM datepart_table
実行結果
| 日付 | 数値日付 |
| 20-03-01 | 1 |
| 20-03-02 | 2 |
| 20-03-03 | 3 |
| 20-03-04 | 4 |
| 20-03-05 | 5 |
| 20-03-06 | 6 |
DATEPART関数 : 使用例 (曜日を数値で取得)
次に、曜日を取得する場合のSQL文は次のようになります。曜日は先ほどの数値で取得しています。
SQL文 SELECT 日付, DATEPART(weekday, 日付) 曜日 FROM datepart_table
実行結果
| 日付 | 曜日 |
| 20-03-01 | 1 |
| 20-03-02 | 2 |
| 20-03-03 | 3 |
| 20-03-04 | 4 |
| 20-03-05 | 5 |
| 20-03-06 | 6 |
なお日付要素を数値型ではなく文字列型で取得したい場合には、DATENAME関数を使用します。

【SQL Server】 DATENAME関数の使い方(日付要素を文字で取得)
DATENAME関数は、日付要素を文字列で取得する関数です。この関数はMS-SQL Serverに対応しています。いちれべ.comは、オラクル、MS-SQL、MS-Access で使用可能か一目でわかるページです。
関連リンク
関数一覧ページ

SQLリファレンス > 関数
ORACLE、MS-SQL Server、MS-Access、MySQLで使用する関数の一覧表です。いちれべ.comは、オラクル、MS-SQL Server、MS-Access で使用可能か一目でわかるのが特徴のSEサポートサイトです。
