Background Image
질의작성
2020.05.13 09:21

VALUES 절 활용하기

조회 수 814 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

UNION ALL 질의문을 400개를 초과해 사용할 경우 다음과 같이 에러가 출력된다.

- ERROR: The query has been rejected due to attempt to exceed the maximum allowed nesting level(400).

UNION ALL을 대신하여 VALUES 절을 활용하여 UNION ALL 질의문을 단순하게 표현할 수 있다. 


[테스트]

create table tmp as (select level as lv from db_root connect by level <= 2000);

alter table tmp add primary key (lv);


SELECT /*recompile*/ * 

FROM tmp a 

JOIN(

SELECT 1 AS col1, 'first' AS col2

UNION ALL

SELECT 2, 'a'

UNION ALL

SELECT 3, 'a'

UNION ALL

...

SELECT 1001, 'a'

UNION ALL

SELECT 1002, 'a'

) b ON b.col1 = a.lv;


위와 같이 UNION ALL 문을 400개 이상 사용할 수 없는 질의를 VALUES문을 활용하여 아래와 같이 사용할 수 있다.

SELECT /* recompile */ *

FROM tmp a

JOIN (

           VALUES (1 AS col1,'first' AS col2),

(2        ,'a'),

(3        ,'a'),

...

(1001   ,'a'),

        (1002   ,'a')

) b ON b.col1 = a.lv;


  trace               

======================

Trace Statistics:

  SELECT (time: 7, fetch: 2005, ioread: 0)

    SCAN (temp time: 0, fetch: 0, ioread: 0, readrows: 1002, rows: 1002)

      SCAN (index: tmp.pk_tmp_lv), (btree time: 5, fetch: 2004, ioread: 0, readkeys: 1002, filteredkeys: 0, rows: 1002, covered: true)

    SUBQUERY (uncorrelated)

      SELECT (time: 0, fetch: 0, ioread: 0)

        SCAN (noscan time: 0, fetch: 0, ioread: 0)


관련 내용 메뉴얼 URL : https://www.cubrid.org/manual/ko/9.3.0/sql/query/select.html#values


  1. Windows에서 32bit 버전의 PHP 설치 후 CUBRID와 연동 실패 시 해결 방법

  2. Invalid XASL tree node content 에러

  3. cubrid plandump ( plan cache정보확인)

  4. 큐브리드 마스터 소켓 디렉토리 변경방법

  5. 스키마 및 인덱스 선언에 따른 최대 용량 산정을 위한 ROW SIZE 확인

  6. Cubrid는 어떤 쿼리를 동일한 쿼리로 판단할까?

  7. CUBRID PHP 드라이버 빌드와 연동방법

  8. subquery를 이용한 튜닝예제

  9. 테이블 명세서 쿼리

  10. JBoss 사용 시 statement pooling 설정

  11. CUBRID 와 DBCP의 관계

  12. loose index scan을 활용한 효과적인 쿼리 튜닝 방안

  13. CUBRID 브로커와 시스템 메모리

  14. 윈도우 OS에서 java sp 사용 시 Java VM is not running 해결 방법

  15. CUBRID 8.2.2 ~ 8.4.x 버전에서 'ALTER SERIAL ... CACHE <cached_num> / NOCACHE' ERROR 해결 방법

  16. JAVA_SP를 이용해서 정규표현식을 이용해서 치환을 하자.

  17. 입력된 날자를 이용하여 해당 주차의 모든 날자 구하기

  18. VALUES 절 활용하기

  19. synonym에 대하여

Board Pagination Prev 1 ... 5 6 7 8 9 10 11 12 13 14 Next
/ 14

Contact Cubrid

대표전화 070-4077-2110 / 기술문의 070-4077-2113 / 영업문의 070-4077-2112 / Email. contact_at_cubrid.com
Contact Sales