2011-07-05 2 views
0

DATETEIME 스탬프로 2 개의 행을 선택할 때, 나는 단지 m/d/y 데이터 만 원한다.sql datetime 스탬프를 m/d/y로만 선택하십시오. (h m s 제외)

선택 중에 변경해야합니다 (이후는 아님).

+0

TSQL은 모두 SQL Server 및 Sybase에서 사용되는 - 그것은 무엇입니까? 대답에 크게 영향을 줄 수 있습니다. –

+0

날짜의 날짜 구성 요소 만 원하거나 쿼리에서 문자열의 서식을 올바르게 지정하려고합니까? –

+0

SQL Server를 가정 할 때 대부분의 기본 TSQL 옵션은 직접 작성하지 않은 경우 [CAST/CONVERT] (http://msdn.microsoft.com/en-us/library/ms187928.aspx)를 통해 수행됩니다. –

답변

1

수출용입니까? 텍스트 만 원하면 다양한 변형 형식을 사용할 수 있습니다. on MSDN. 당신은 SQL 2008을 사용하는 경우

select convert(varchar, getdate(), 101) 
-- output: 07/05/2011 

그렇지 않으면, 당신은 단지 날짜로 날짜를 캐스팅 할 수 있습니다

select cast(getdate() as date) 
+0

시간을 WHERE 절에서 비교해야만 타임 스탬프로 유지해야한다고 생각합니다. 2005 년에 다른 방법이 있습니까? – tdjfdjdj

+0

당신은'select cast (datetime으로 convert (varchar, getdate(), 101) 변환 '을 통해 datetime으로 캐스트 캐스트 할 수 있습니다. 그러나 이것이 어떻게 datediff 솔루션과 비교하여 성능이 좋은지 모르겠습니다. 그래도 대체 뭐하고 있니? 특정 날짜에 대해 쿼리하는 데 정말로 필요합니까? 그럴 경우 더 나은 방법이 있기 때문에 알려주세요. – canon

+0

나는 두 개의 날짜를 선택하고 있으며 어떤 행이 다른 날짜보다 큰지를 결정하기 위해 WHERE를 사용합니다. 두 날짜 모두 m/d/y로 변환해야합니다. – tdjfdjdj

3

SQL 2008

select CAST(getdate() as date) yourdate 
FROM yourtable 

select DATEADD(dd, DATEDIFF(dd, 0, getdate()), 0) yourdate 
FROM yourtable 

Most efficient way in SQL Server to get date from date+time? 또는

Best approach to remove time part of datetime in SQL Server를 참조하십시오 당신은 단지 다음과 같은 가정 SQL 서버를

사전 SQL 2008을해야 할 시간을 제거하려면

+0

conrad ... Q를 어떻게 빨리 얻을 수 있는지에 대한 어떤 트릭이 있습니까? 3 개의 최소 한도와 대답과 더불어. .. 멋진! – Ram

+0

@Ram. 이 문제는 내가 규칙적으로 직면하는 문제 중 하나이기 때문에 구문을 편리하게 사용할 수 있습니다. 링크가 조금 더 오래 걸렸지 만 처음 5 분 안에 추가 했으므로 편집 내용을 보지 못했습니다. –

+0

영리한! .. 그리고 설명을 주셔서 감사합니다. – Ram

관련 문제