반응형
임시 테이블 만들기A, B, C, D ...가 포함된 값을 where 조건 IN절에 넣을때 1000개 씩 밖에 조회가 되지 않는다.1000개 이상의 값을 넣기 위해 아래와 같이 임시로 테이블을 만들거나실제 테이블을 create 하는게 더 효율적일수 있다.WITH TEST AS ( SELECT 'A' AS GBN FROM DUAL UNION ALL SELECT 'B' AS GBN FROM DUAL UNION ALL SELECT 'C' AS GBN FROM DUAL UNION ALL SELECT 'D' AS GBN FROM DUAL UNION ALL SELECT 'E' AS GBN FROM DUAL UNION ALL SELECT 'F' AS GBN FROM DUAL UNION ALL SELECT 'G' AS GBN FROM DUAL)SELECT * FROM TEST;[WITH 구문]- WITH구문내의 쿼리의 결과(SUB쿼리)가 여러번 사용될때(호출될때) 유용하다.- 서브쿼리 블럭에 이름을 지정할 수 있도록 해줌.- 오라클 옵티마이저는 쿼리를 인라인뷰나 임시 테이블로 여긴다.- Oracle 9 이상 지원
반응형
'개발의 흔적 > DB' 카테고리의 다른 글
oracle 비밀번호 암호화 방법 (0) | 2018.06.22 |
---|---|
oracle 컬럼 추가 (0) | 2018.06.18 |
[에러] ORA-31011: XML 구문 분석을 실패함 (0) | 2018.05.31 |
[에러] oracle 패키지(프로시저)에서 유저명.테이블 적용 후 컴파일 에러 (0) | 2018.05.31 |
Oracle 비밀번호 만료(the password will expire within) (0) | 2016.03.21 |