DATENAME (Transact-SQL)
更新 : 2006 年 7 月 17 日
指定された日付について、特定の日付要素を文字列で返します。
重要 : |
---|
この機能は以前のバージョンの SQL Server から変更されました。詳細については、「SQL Server 2005 におけるデータベース エンジン機能の動作の変更」を参照してください。 |
構文
DATENAME ( datepart ,date )
引数
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
日付要素 weekday (dw) は、曜日の名前 (日曜、月曜など) を返します。
date
datetime 型または smalldatetime 型の値を返す式、または日付形式の文字列を指定します。1753 年 1 月 1 日以降の日付には datetime 型を使用し、それ以前の日付は文字データとして保存します。datetime 型の値を入力するときは、その値を常に引用符で囲みます。smalldatetime の精度は分単位なので、smalldatetime 型の値を使用する場合、秒とミリ秒は常に 0 になります。日付を指定する方法の詳細については、「日付と時刻 (Transact-SQL)」を参照してください。時間値を指定する方法の詳細については、「時刻形式」を参照してください。年を下 2 桁のみで指定した場合、その数値が two-digit year cutoff 構成オプションに指定されている終了年の下 2 桁の数値以下であれば、終了年と同じ世紀であると見なされます。終了年の下 2 桁の数値より大きい場合は、終了年の世紀の前の世紀であると見なされます。たとえば、two-digit year cutoff が 2049 (既定) であるとすると、49 は 2049 と認識され、50 は 1950 と認識されます。こうしたあいまいさを排除するため、4 桁の西暦を使用してください。
戻り値の型
nvarchar
解説
SQL Server 2005 データベース エンジンでは、たとえば、文字型の値と datetime 型の値を比較するような場合、必要に応じて自動的に文字型と datetime 型の間の変換が行われるようになっています。
例
次の例では、GETDATE
で返される日付から月の名前を取得します。
SELECT DATENAME(month, GETDATE()) AS 'Month Name';
以下に結果セットを示します。
Month Name
------------------------------
February
次の例では、列から月名を抽出します。
USE AdventureWorks;
GO
SELECT StartDate, DATENAME(month,StartDate) AS StartMonth
FROM Production.WorkOrder
WHERE WorkOrderID = 1;
GO
以下に結果セットを示します。
StartDate StartMonth
-------------------------------- ------------
2001-07-04 00:00:00.000 July
次の例では、各 datepart 引数を 'YYYY-MM-DDTHH:MM:SS.xxx' 形式の date 引数と共に示します。
SELECT DATENAME(year,'1995-10-30 12:15:32.123');
SELECT DATENAME(yy,'1995-10-30 12:15:32.123');
SELECT DATENAME(yyyy,'1995-10-30 12:15:32.123');
-- Return: 1995
SELECT DATENAME(quarter,'1995-10-30 12:15:32.123');
SELECT DATENAME(qq,'1995-10-30 12:15:32.123');
SELECT DATENAME(q,'1995-10-30 12:15:32.123');
-- Return: 4
SELECT DATENAME(month,'1995-10-30 12:15:32.123');
SELECT DATENAME(mm,'1995-10-30 12:15:32.123');
SELECT DATENAME(m,'1995-10-30 12:15:32.123');
-- Return: October
SELECT DATENAME(dayofyear,'1995-10-30 12:15:32.123');
SELECT DATENAME(dy,'1995-10-30 12:15:32.123');
SELECT DATENAME(y,'1995-10-30 12:15:32.123');
-- Return: 303
SELECT DATENAME(day,'1995-10-30 12:15:32.123');
SELECT DATENAME(dd,'1995-10-30 12:15:32.123');
SELECT DATENAME(d,'1995-10-30 12:15:32.123');
-- Return: 30
SELECT DATENAME(week,'1995-10-30 12:15:32.123');
SELECT DATENAME(wk,'1995-10-30 12:15:32.123');
SELECT DATENAME(ww,'1995-10-30 12:15:32.123');
-- Return: 44
SELECT DATENAME(weekday,'1995-10-30 12:15:32.123');
SELECT DATENAME(dw,'1995-10-30 12:15:32.123');
-- Return: Monday
SELECT DATENAME(hour,'1995-10-30 12:15:32.123');
SELECT DATENAME(hour,'1995-10-30 12:15:32.123');
SELECT DATENAME(hh,'10/30/1995 12:15:32.123 PM');
SELECT DATENAME(hh,'10/30/1995 12:15:32.123 PM');
-- Return: 12
SELECT DATENAME(minute,'1995-10-30 12:15:32.123');
SELECT DATENAME(mi,'1995-10-30 12:15:32.123');
SELECT DATENAME(n,'1995-10-30 12:15:32.123');
-- Return: 15
SELECT DATENAME(second,'1995-10-30 12:15:32.123');
SELECT DATENAME(ss,'1995-10-30 12:15:32.123');
SELECT DATENAME(s,'1995-10-30 12:15:32.123');
-- Return: 32
SELECT DATENAME(millisecond,'1995-10-30 12:15:32.123');
SELECT DATENAME(ms,'1995-10-30 12:15:32.123');
-- Return: 123
変更履歴
リリース | 履歴 |
---|---|
2006 年 7 月 17 日 |
|
参照
関連項目
CAST および CONVERT (Transact-SQL)
データ型 (Transact-SQL)
日付と時刻関数 (Transact-SQL)
その他の技術情報
ISO 8601 形式
アルファベット日付形式
数値日付形式
ODBC 日付時刻形式
時刻形式
区切りのない文字列形式