나는 그것이 현재 날짜에서 3-15개월 사이의 모든 날짜를 출력하는 기본 SQL 쿼리를 작성하려는 : 선택 할 테이블이 없지만from 테이블 절을 사용하지 않고 날짜 범위를 선택하는 방법은 무엇입니까?
DATEADD(month, 3, GETDATE()) AND (DATEADD(month, 15, GETDATE()))
캐치입니다. 난 그냥 기본 SELECT를 수행하여 날짜 목록을 얻고 싶습니다. 이것이 가능한가?
나는 그것이 현재 날짜에서 3-15개월 사이의 모든 날짜를 출력하는 기본 SQL 쿼리를 작성하려는 : 선택 할 테이블이 없지만from 테이블 절을 사용하지 않고 날짜 범위를 선택하는 방법은 무엇입니까?
DATEADD(month, 3, GETDATE()) AND (DATEADD(month, 15, GETDATE()))
캐치입니다. 난 그냥 기본 SELECT를 수행하여 날짜 목록을 얻고 싶습니다. 이것이 가능한가?
다음 두 날짜 사이의 모든 날짜를 가져 오는 데 도움이됩니다.
DECLARE @Date1 DATE, @Date2 DATE
SET @Date1 = '2015-05-28'
SET @Date2 = '2015-06-30'
SELECT DATEADD(DAY,number+1,@Date1) [Date]
FROM master..spt_values
WHERE type = 'P'
AND DATEADD(DAY,number+1,@Date1) < @Date2
대단히 감사합니다. –
아직 대답이 있지만 아직 문서화되지 않았거나 지원되지 않는 시스템 테이블에 의존하지 않는 대안을 제안합니다.
declare @Date1 date = '2015-05-28';
declare @Date2 date = '2015-06-30';
declare @Dates table (Date Date);
while @Date1 <= @Date2
begin
insert into @Dates (Date) values (@Date1);
set @Date1 = DateAdd(Day, 1, @Date1);
end
select * from @Dates;
여기 날짜 범위는 세트입니다. 나는'SELECT'가 테이블없이 집합을 출력 할 수 있다고 생각하지 않는다. – qxg