2014-05-09 2 views
0

나는 2 개의 날짜가있는 테이블을 가지고 있습니다.동적으로 마지막 48 시간을 선택하십시오.

Date A 
Date B 

나는 날짜 B는이 경우

샘플 데이터를 날짜 A. 후 48 시간 이내에

Date A   Date B 
1/28/2011 1/19/2014 
12/21/2010 1/18/2014 
2/5/2014 2/7/2014 

일어난 모든 행 3 행

+0

어떤 언어 : 당신의 예에서

당신은 어딘가의 라인을 따라, 날짜 A를 getdate()를 대체 할 수 있을까? 플랫폼? – rayryeng

+0

나는 TSQL –

+0

죄송합니다. 꼬리표를 보지 못했습니다. 감추고있는 나를 위해 나를 공급한다! – rayryeng

답변

1

DATEADD() 트릭을 수행해야합니다. SELECT DATEADD(hh, 48, getdate())은 지금부터 48 시간 후에 반환됩니다.

SELECT DateB 
FROM x 
WHERE DateB BETWEEN DateA AND DATEADD(hh, 48, DateA) 
1
SELECT DateA, DateB 
FROM dbo.TableName 
WHERE DATEDIFF(hour, DateA, DateB) <= 48 
자격을 선택해야합니다

Sql-Fiddle

ABS을 사용하십시오. 날짜가 더 빠르면 중요하지 않습니다.

관련 문제