시작일과 종료일 사이의 값을 구한 후 쿼리에서 보고싶습니다.
번호 | 시작일 | 종료일 |
1 | 20181226 | 20181228 |
번호 | 시작일 | 종료일 | 기간 |
1 | 20181226 | 20181228 | 20181226 |
1 | 20181226 | 20181228 | 20181227 |
1 | 20181226 | 20181228 | 20181228 |
SELECT 번호, 시작일, 종료일, (SELECT TO_DATE ('시작일', 'YYYYMMDD')+(LEVEL - 1) YMD
FROM DUAL
CONNECT BY TO_DATE ('시작일', 'YYYYMMDD')+(LEVEL-1) <=TO_DATE ('종료일', 'YYYYMMDD')) AS 기간
위의 쿼리로 했더니 ORA-01427: 단일 행 하위 질의에 2개 이상의 행이 리턴되었습니다.
이 뜨는데 아래 테이블처럼 출력하는 방법이 있을까요?
1. 스칼라 서브 쿼리 없이 작성해 보세요.
2. 1개 번호에 대해서만 뽑는 건가요? 여러개 번호를 함께 뽑아야 하나요?
테이블에 직접 CONNECT BY 를 걸면 안됩니다.
http://gurubee.net/article/55635