테이블에 입력되어 있는게 아닌 일자를 구하고 싶습니다. 시스템 날짜를 가져오듯 기간을 주면 그 기간동안의 일자를 뽑을수있을까요?? select * from dual where dt between '20061001' and '20061003' ==> 20061001 20061002 20061003 갈켜주세요...
아래와 같은 쿼리를 응용을 하던가, 아니면 날짜 코드 테이블을 이용하는 방법이외에는 없을 것 같습니다. --================================================================================== DECLARE @s_date smalldatetime ,@e_date smalldatetime ,@temp_date smalldatetime ,@i int ,@j int
DECLARE @temp TABLE ( date smalldatetime )
SELECT @s_date = '20061001' , @e_date='20061003',@i = DATEdiff(day, @s_date,@e_date),@j=0
SET @temp_date= @s_date
WHILE @i>=@j BEGIN INSERT INTO @temp(date) values(@temp_date) SET @j=@j +1; SET @temp_date= DATEADD(dd,@j,@s_date) END
SELECT CONVERT(char(10), date,112) AS date FROM @temp