DATEPART (Transact-SQL)

指定された日付について、特定の日付要素を整数で返します。

トピック リンク アイコンTransact-SQL 構文表記規則

構文

DATEPART ( datepart , date )

引数

  • datepart
    返す対象となる日付要素を指定するパラメータです。次の表に、日付要素 (datepart) と Microsoft SQL Server 2005 で認識される省略形を示します。

    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

    日付要素 week (wk, ww) には、SET DATEFIRST に加えられた変更が反映されます。1 月 1 日が日付要素 week の開始日となります。たとえば、DATEPART(wk,'Jan 1, xxxx') = 1 となります。ここで、xxxx には任意の年を指定できます。

    日付要素 weekday (dw) は、曜日に対応する数値を返します。たとえば、日曜日 = 1、土曜日 = 7 となります。日付要素 weekday によって得られる数値は、SET DATEFIRST によって設定される値に応じて異なります。このオプションは、週の最初の曜日を設定します。

  • date
    datetime 型または smalldatetime 型の値を返す、または日付形式の文字列を指定します。1753 年 1 月 1 日以降の日付には、datetime 型のみ使用してください。それ以前の日付は文字データとして保存されます。datetime 型の値を入力するときは、その値を常に引用符で囲みます。smalldatetime の精度は分単位であるため、smalldatetime 型の値を使用する場合、秒とミリ秒は常に 0 になります。

    年を下 2 桁のみで指定した場合、その数値が two-digit year cutoff 構成オプションに指定されている終了年の下 2 桁の数値以下であれば、終了年と同じ世紀であると見なされます。終了年の下 2 桁の数値より大きい場合は、終了年の世紀の前の世紀であると見なされます。たとえば、two-digit year cutoff が 2049 (既定) であるとすると、49 は 2049 と認識され、50 は 1950 と認識されます。このあいまいな状態を避けるためには、4 桁の西暦を使用して表記します。

    時刻値の指定の詳細については、「時刻形式」を参照してください。日付の指定の詳細については、「日付と時刻 (Transact-SQL)」を参照してください。

戻り値の型

int

解説

DAY、MONTH、および YEAR 関数は、それぞれ DATEPART(**dd,**date)、DATEPART(mm,date)、および DATEPART(yy, date) のシノニムです。

GETDATE 関数は、現在の日付を返します。ただし、比較には常に完全な日付が必要なわけではなく、日付の一部分のみが比較されることがよくあります。次の例では、GETDATEDATEPART の出力を示します。

SELECT GETDATE() AS 'Current Date'
GO

以下に結果セットを示します。

Current Date                
--------------------------- 
Feb 18 1998 11:46PM         
SELECT DATEPART(month, GETDATE()) AS 'Month Number'
GO

以下に結果セットを示します。

Month Number 
------------ 
2            

次の例では、日付を 5 月 29 日と仮定しています。

SELECT DATEPART(month, GETDATE())
GO

以下に結果セットを示します。

----------- 
5           
(1 row(s) affected)

次の例では、日付が値で指定されます。SQL Server は、0 を 1900 年 1 月 1 日と解釈することに注意してください。

SELECT DATEPART(m, 0), DATEPART(d, 0), DATEPART(yy, 0)

以下に結果セットを示します。

----- ------ ------
1     1      1900

参照

関連項目

CAST および CONVERT (Transact-SQL)
データ型 (Transact-SQL)
日付と時刻関数 (Transact-SQL)

その他の技術情報

ISO 8601 形式
アルファベット日付形式
数値日付形式
ODBC 日付時刻形式
時刻形式
区切りのない文字列形式

ヘルプおよび情報

SQL Server 2005 の参考資料の入手