안녕하세요.



번호 

제목 

시작일 

종료일 

 1

휴가 

2015-09-01 

2015-09-05 

 2

추석

2015-09-26

2015-09-29 


위와같은 데이터를 하위표처럼 시작일~종료일 만큼 행으로 출력하고 싶습니다.


도움 부탁드립니다.



 번호

제목 

일자 

 1

휴가 

2015-09-01 

 1

휴가 

2015-09-02 

 1

휴가 

2015-09-03

 1

휴가 

2015-09-04

 1

휴가 

2015-09-05

 2 

추석 

2015-09-26 

 2

추석 

2015-09-27 

 2

추석 

2015-09-28 

 2

추석 

2015-09-29 

 












------------------------------------------------------------------------------------------------

커서를 이용하여 원하는 결과값을 얻어내긴했습니다만....

데이터가 많을때는 성능에 문제가 있겠군요...

동일한 결과를 낼수있는 다른방법이 있다면 공유해주시면 감사하겠습니다.

------------------------------------------------------------------------------------------------



DECLARE @T_TARGET TABLE

[NO] INT

,TITLE VARCHAR(50)

,SDATE VARCHAR(10)

,EDATE VARCHAR(10)

)

INSERT INTO @T_TARGET VALUES(1, '휴가', '2015-09-01', '2015-09-05')

INSERT INTO @T_TARGET VALUES(2, '추석', '2015-09-26', '2015-09-29')


DECLARE @T_RESULR TABLE

[NO] INT

,TITLE VARCHAR(50)

,[DATE] VARCHAR(10)

)


DECLARE @NO INT

DECLARE @TITLE VARCHAR(50)

DECLARE @SDATE VARCHAR(10)

DECLARE @EDATE VARCHAR(10)

DECLARE @DAY INT = 0


DECLARE _CURSOR CURSOR

FOR 

SELECT [NO], [TITLE], SDATE, EDATE FROM @T_TARGET

OPEN _CURSOR


FETCH NEXT FROM _CURSOR INTO @NO, @TITLE, @SDATE, @EDATE


WHILE @@FETCH_STATUS = 0

BEGIN

SET @DAY = 0

-------------- 실행쿼리---------------

WHILE (DATEADD(DD, @DAY, @SDATE) <= DATEADD(DD, 0, @EDATE)) BEGIN

INSERT INTO @T_RESULR VALUES(@NO, @TITLE, CONVERT(VARCHAR(10), DATEADD(DD, @DAY, @SDATE), 121))

SET @DAY = @DAY + 1

END

-------------- 실행쿼리종료---------------

FETCH NEXT FROM _CURSOR INTO @NO, @TITLE, @SDATE, @EDATE

END 



CLOSE _CURSOR

DEALLOCATE _CURSOR


SELECT * FROM @T_RESULR

No. Subject Author Date Views
Notice 2023년 1월 - SQLER의 업데이트 강좌 리스트 코난(김대우) 2023.01.02 1245
8942 개인정보 암호화 관련 문의입니다. 호짱 2015.09.24 3079
8941 대용량 테이블의 row 삭제에 관해 [1] 음마앙 2015.09.23 3929
8940 쿼리문 질문좀 드릴께요 where 조건 [7] 즈타 2015.09.23 2979
8939 SSIS MSSQL -> MYSQL Data 전송 시 한글 누락 현상 [3] dunhill123 2015.09.23 4489
8938 조건에 없는 값을 출력하는 간단한 방법 없을까요? [5] 두루미알 2015.09.22 9238
8937 POS서버 운영에 관한 사양이 궁금합니다. [5] 팔개 2015.09.21 3561
8936 실행계획에서 느낌표 의미 [1] kys96811 2015.09.21 3906
8935 TRUNCATE TABLE 과 delete 와의 차이점 [2] 제시카 2015.09.20 3125
8934 각 id별 최신 연도 등급만 검색 [7] 제시카 2015.09.20 2875
8933 insert 시 빈데이터나 잘못 입력된 데이터 입력 방지 질문 [2] 슈토파이터 2015.09.18 2970
8932 사용자 정의 함수를 찾을 수 없거나 이름이 불확실합니다 [3] 에슈리온 2015.09.17 8471
8931 join 쿼리 문의드립니다. [2] dDrake 2015.09.17 2676
8930 여러개의 쿼리를 동시에 던졌는데 중간에 에러발생시 리턴 문의 [1] 비와바람 2015.09.16 3617
8929 명명된 인스턴스 접속 [3] 절간신부™ 2015.09.15 3814
» FROM~TO 기간만큼 행으로 조회쿼리 질문합니다. [2] 오늘밤은안돼요 2015.09.15 2808
8927 1개의 테이블안에 컬럼값 비교 쿼리 문의 드립니다. [2] akfflr 2015.09.15 3337
8926 쿼리 문의합니다.. [1] 경원 2015.09.14 2299
8925 where 조건에 해당 하는 건수를 조회할려면?? [2] 말자말자 2015.09.14 2975
8924 top1 을 사용하지않고 결과값을 하나만 얻을수있을까요? [2] 고구망 2015.09.14 2340
8923 각 날짜의 마지막 데이터를 얻어오는 쿼리를 만들고 싶습니다. [3] 딱풀 2015.09.11 3571





XE Login