BusinessDataDate에서 구성한 데이터를 보유하는 SQL Server 테이블이 있습니다. BusinessDataDate는 날짜 만 (시간 구성 요소가 없음)이며 영업일에만 채워집니다. 예 : 주말이나 공휴일은 허용되지 않습니다.SQL에서 "다음이지만 최신"날짜를 찾는 가장 좋은 방법은 무엇입니까?
특정 순서는이에 없기 때문에, 나는이 쿼리가 작동 date before the current max date
를 찾으려면, 나는 지역 변수에 값을 설정할 수 있습니다 -하지만 청소기 방법이있을 것처럼 느낌?
SELECT MAX(BusinessDataDate) FROM myTable
WHERE BusinessDataDate < (SELECT MAX(BusinessDataDate) FROM myTable)
각 날짜에는 테이블에 여러 행이 있습니다. 정확한 숫자는 예측할 수 없습니다.
귀하의 접근 방법은 문제가 없습니다. 마지막 x 일만 필터링하기 위해 기본 및 하위 쿼리에 where 절을 추가하면 성능이 향상 될 수 있습니다. –
나는 그것을 시도 할지도 모르지만 ... 중동에서 일하는 것은 조금 모호하다. Eid는 3-6 일이 될 수 있으며 주말과 일치하는 경우 정서적으로 10 일 범위를 가질 수 있습니다. – BlueChippy