2010-03-10 5 views
1

가격 시작일, 종료일 및 가격이있는 테이블이 있습니다. 검색을 날짜 범위 내에서 전달하고 해당 범위의 모든 요일에 가격이 존재하는지 여부를 반환해야합니다. 기간은 여러 가격에 걸쳐있을 수 있으며 중간에 간격이 없습니다.SQL 확인 기간 모든 날짜가 날짜 범위 사이에 있음

이것이 가능합니까?

Prices 
startDate datetime 
endDate datetime 
price 

DECLARE @startDate datetime = '2010-04-01', 
     @endDate datetime = '2010-04-30' 

SELECT * FROM Prices WHERE @startDate BETWEEN startDate AND endDate... 
+1

이는 정확한 중복 질문을 여러 번 여기에서 물었다. 여기를 참조하십시오 : http://stackoverflow.com/questions/271595/getting-dates-between-a-range-of-dates – David

+0

감사합니다, 분명히 옳은 것을 찾고 있지 않았습니다. – markvpc

+0

나는 그것이 실제로 다르다라고 생각한다. 이 쿼리에 대답하기 위해 모든 날짜를 찾을 필요는 없습니다. – RedFilter

답변

2

가진 문을 사용하여 쿼리에 그룹화를 추가

HAVING COUNT(*) = DATEDIFF(DAY,@StartDate,@EndDae)+1