[sql-server] SQL Server 날짜 시간을 더 짧은 날짜 형식으로 변환

datetimeSQL Server에 이와 같은 데이터를 제공 하는 열 10/27/2010 12:57:49 pm이 있고이 열을 쿼리하고 싶지만 SQL Server가 일 월과 연도를 반환하도록합니다. 2010 10 27또는 그런 것.

연구해야 할 기능은 무엇입니까?

다른 날짜 데이터 유형으로 변환해야합니까? 아니면 단순히 문자열로 변환 하시겠습니까?



답변

CONVERT를 살펴보십시오 . 세 번째 매개 변수는 변환하려는 날짜 시간 스타일입니다.

예 :

SELECT CONVERT(VARCHAR(10), GETDATE(), 103) -- dd/MM/yyyy format


답변

이 시도:

print cast(getdate() as date )


답변

날짜 형식의 결과가 필요한 경우 다음을 사용할 수 있습니다.

Select Convert(DateTime, Convert(VarChar, GetDate(), 101))


답변

CAST 및 CONVERT 외에도 Sql Server 2008을 사용하는 경우 날짜 형식으로 변환 (또는 해당 형식을 사용하여 시작) 한 다음 선택적으로 다시 varchar로 변환 할 수 있습니다.

declare @myDate date
set @myDate = getdate()
print cast(@myDate as varchar(10))

산출:

2012-01-17


답변

SQL Server 2005에서는 다음을 사용합니다.

select replace(convert(char(10),getdate(),102),'.',' ')

결과 : 2015 03 05


답변

2018-03-30 08 : 43 : 28.177과 같은 결과를 제공 하는 datetime 필드 가있는 경우

제안 : 2018-03-30처럼 표시되도록 datetime날짜 로 변경하려고합니다.

cast(YourDateField as Date)


답변

mm / dd / yy의 가장 짧은 날짜 형식은 다음을 사용하여 얻을 수 있습니다.

Select Convert(varchar(8),getdate(),1)