SQL道場 日付時刻関数 DATEPART関数
SQLで日付値から任意の日付要素の数値を取得するDATEPART関数について記載しています。
対応データベース:SQLServer Access
DATEDIFF関数の文法
SELECT DATEPART(日付要素,日付) FROM テーブル
SELECT DATEPART(date elements, date) FROM table
その他
引数 Arguments | 日付要素 Date element | 文字列型 String type |
日付1 Date1 | 文字列型 String type | |
返値 return value | 文字型 日付要素が数値で戻ります。 Returns the character date element as a number. |
SQLServer
引数 Arguments | 日付要素 Date element | SQL Server、Accessの日付の要素 SQL Server, Access Date Element |
開始日付 Start Date | 以下のいずれかの値で解決できる式 (An expression that can be resolved by one of the following values:) ・date ・datetime ・datetimeoffset ・datetime2 ・smalldatetime ・time | |
終了日付 End Date | 開始日付と同様 Similar to Start Date | |
返値 return value | int | 返値参照 See Return Value |
返値
日付要素 Date element | 戻り値 Return value |
---|---|
year、yyyy、yy | 2008 |
quarter、qq、q | 4 |
month、mm、m | 12 |
dayofyear、dy、y | 303 |
day、dd、d | 30 |
week、wk、ww | 44 |
weekday、dw | 3 |
hour、hh | 12 |
minute、n | 15 |
second、ss、s | 32 |
millisecond、ms | 123 |
microsecond、mcs | 123456 |
nanosecond、ns | 123456700 |
tzoffset, tz | 310 |
iso_week, isowk, isoww | 44 |
DATEPART関数は指定された日付の日付要素を数値で戻します。MS公式サイト
SQL Server、Accessの日付の要素
SQL Server | 省略形 abbreviation | Access | |
---|---|---|---|
年 | year | yy,yyyy | yyyy |
四半期 | quarter | qq,q | q |
月 | month | mm,m | m |
年始からの通算日 | dayofyear | dy,y | y |
日 | day | dd,d | d |
週 | week | wk,ww | ww |
曜日 | weekday | dw | w |
時間 | hour | hh | h |
分 | minute | mi,n | n |
秒 | second | ss,s | s |
ミリ秒 | millisecond | ms | |
マイクロ秒 | microsecond | mcs | |
ナノ秒 | nanosecond | ns | |
tzoffset | tz | ||
iso_week | isowk、isoww |
実行例
SQLServerの実行例
/* SQL Server 2009/12/31の年始からの日数を取得するサンプル */
SELECT DATEPART(DAYOFYEAR,'2009-12-31');
曜日を取得
/* SQL Server 2009/12/01の曜日を取得するサンプル */
SELECT DATEPART(WEEKDAY,'2009-12-01');
曜日は1~7の数値が返されます。数値の意味は以下となります。
返される値 | 曜日 |
1 | 日 |
2 | 月 |
3 | 火 |
4 | 水 |
5 | 木 |
6 | 金 |
7 | 土 |