DATENAME(Transact-SQL)
지정한 date의 특정 datepart를 나타내는 문자열을 반환합니다.
모든 Transact-SQL 날짜/시간 데이터 형식 및 함수에 대한 개요는 날짜 및 시간 함수(Transact-SQL)를 참조하십시오. 날짜/시간 데이터 형식 및 함수에 대한 자세한 내용과 일반적인 예는 날짜 및 시간 데이터 사용을 참조하십시오.
구문
DATENAME ( datepart , date )
인수
datepart
반환되는 date의 일부입니다. 다음 표에서는 올바른 모든 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
microsecond
mcs
nanosecond
ns
TZoffset
tz
date
time, date, smalldatetime, datetime, datetime2 또는 datetimeoffset 값으로 확인될 수 있는 식입니다. date는 식, 열 식, 사용자 정의 변수 또는 문자열 리터럴일 수 있습니다.모호성을 피하려면 4자리 연도를 사용하십시오. 2자리 연도에 대한 자세한 내용은 two digit year cutoff 옵션을 참조하십시오.
반환 형식
nvarchar
반환 값
- 각 datepart와 해당 약어는 동일한 값을 반환합니다.
반환 값은 SET LANGUAGE 및 로그인의 기본 언어를 통해 설정된 언어 환경에 따라 다릅니다. date가 특정 문자열 리터럴 형식이면 반환 값은 SET DATEFORMAT에 따라 달라집니다. date가 날짜 또는 시간 데이터 형식의 열 식이면 SET DATEFORMAT은 반환 값에 영향을 주지 않습니다.
SQL Server 2000 이상의 SQL Server 버전에서는 date 매개 변수에 date 데이터 형식 인수가 있으면 반환 값은 SET DATEFIRST를 사용하여 지정된 설정에 따라 달라집니다.
TZoffset datepart 인수
datepart 인수가 TZoffset(tz)이고 date 인수에 표준 시간대 오프셋이 없으면 0이 반환됩니다.
date 인수에 포함되지 않은 datepart는 기본값이 반환됨
date 인수의 데이터 형식에 지정된 datepart가 없으면 datepart의 기본값이 반환됩니다.
예를 들어 모든 date 데이터 형식의 년-월-일 기본값은 1900-01-01입니다. 다음 문은 datepart에 대한 날짜 부분 인수, date에 대한 시간 인수를 가지며 1900, January, 1, 1, Monday를 반환합니다.
SELECT DATENAME(year, '12:10:30.123')
,DATENAME(month, '12:10:30.123')
,DATENAME(day, '12:10:30.123')
,DATENAME(dayofyear, '12:10:30.123')
,DATENAME(weekday, '12:10:30.123');
time 데이터 형식의 시-분-초 기본값은 00:00:00입니다. 다음 문은 datepart에 대한 시간 부분 인수, date에 대한 날짜 인수를 가지며 0, 0, 0을 반환합니다.
SELECT DATENAME(hour, '2007-06-01')
,DATENAME(minute, '2007-06-01')
,DATENAME(second, '2007-06-01');
주의
DATENAME은 SELECT 목록, WHERE, HAVING, GROUP BY 및 ORDER BY 절에서 사용할 수 있습니다. SQL Server 2008 R2에서 DATENAME은 문자열 리터럴을 datetime2 형식으로 암시적으로 캐스팅합니다. 즉, 날짜가 문자열로 전달될 때 DATEDIFF에서 더 이상 YDM 형식을 지원하지 않습니다. YDM 형식을 사용하려면 문자열을 datetime 또는 smalldatetime 형식으로 명시적으로 캐스팅해야 합니다.
예
다음 예에서는 지정된 날짜에 대한 날짜 부분을 반환합니다.
SELECT DATENAME(datepart,'2007-10-30 12:15:32.1234567 +05:10')
결과 집합은 다음과 같습니다.
datepart |
반환 값 |
---|---|
year, yyyy, yy |
2007 |
quarter, qq, q |
4 |
month, mm, m |
October |
dayofyear, dy, y |
303 |
day, dd, d |
30 |
week, wk, ww |
44 |
weekday, dw |
Tuesday |
hour, hh |
12 |
minute, n |
15 |
second, ss, s |
32 |
millisecond, ms |
123 |
microsecond, mcs |
123456 |
nanosecond, ns |
123456700 |
TZoffset, tz |
310 |