database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
ㆍOracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
Oracle Q&A 40843 게시물 읽기
No. 40843
SQL 쿼리 중간값 빠진값 찾기 쿼리 도움 부탁드려요
작성자
김희성(malja444)
작성일
2015-07-01 23:24
조회수
8,502

안녕하세요.. 저는 Dual 가상 테이블을 사용하여 중간값 빠진값 찾기 쿼리를 하고 있습니다.

숫자 1~7 중에 1,2,4,7의 가상테이블 값을 가지고 있으며 3,5,6 값을 찾으려고 하고 있습니다.

아래 쿼리를 보시죠..

 


 with m2 as
(  
                SELECT *
                FROM    ( SELECT 1 AS NUM FROM DUAL UNION ALL
                          SELECT 2 AS NUM FROM DUAL UNION ALL
                          SELECT 4 AS NUM FROM DUAL UNION ALL
                          SELECT 7 AS NUM FROM dual
                        ) 
  )
  (
                         select m2.num as no
                         from table m1 
                         right outer join (select LEVEl num from dual connect by LEVEl <=7) m2 on m2.num  = m1.num
   )    
                         where m1.num is null
                         order by no CONNECT BY LEVEl;

 

 빨간색 칠한것 중에 .... 틀리거나 보충해야 할 것이 있는 것으로 알고  있습니다. 

 

위의 쿼리로 3,5,6의 데이터를 얻고 싶습니다. right outer join 을 사용하여 3,5,6 쿼리 얻게 수정좀 부탁드려요.. 어떤점을 고쳐야 3,5,6데이터를 얻을수 있을까요?
                        

이 글에 대한 댓글이 총 3건 있습니다.

WITH ttt AS
(  
SELECT 1 AS num FROM dual
UNION ALL SELECT 2 FROM dual
UNION ALL SELECT 4 FROM dual
UNION ALL SELECT 7 FROM dual
)
SELECT m2.num AS no
  FROM ttt m1
 RIGHT OUTER JOIN (SELECT LEVEL num FROM dual CONNECT BY LEVEL <= 7) m2
    ON m1.num = m2.num
 WHERE m1.num IS NULL
 ORDER BY no
;

마농(manon94)님이 2015-07-02 11:26에 작성한 댓글입니다.
이 댓글은 2015-07-02 11:27에 마지막으로 수정되었습니다.

마농(manon94)님 정말 감사드립니다. 덕분에 쿼리가 잘되네요 감사드려요.

김희성(malja444)님이 2015-07-02 11:38에 작성한 댓글입니다.

WITH T AS

(

SELECT 1 AS N FROM dual

UNION ALL SELECT 2 FROM dual

UNION ALL SELECT 4 FROM dual

UNION ALL SELECT 7 FROM dual

)

SELECT DISTINCT N+LEVEL N

FROM (

SELECT N

,LEAD(N)OVER(ORDER BY N)-N-1 LEAD_N

FROM T

)

WHERE LEAD_N <> 0

CONNECT BY LEVEL <= LEAD_N

ORDER BY 1;

 

곽성일(zvvvvvz)님이 2015-07-08 15:36에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
40846오라클 9i에서 11g로 업글 하고 난후 프로시저 오류 [1]
염정훈
2015-07-06
8008
40845LEFT JOIN 에서 일반적인 콤마 조인으로 변경 질문드립니다. [1]
김희성
2015-07-03
8102
40844오라클 -> mysql [1]
김다윗
2015-07-03
8220
40843SQL 쿼리 중간값 빠진값 찾기 쿼리 도움 부탁드려요 [3]
김희성
2015-07-01
8502
40842(수정) 설명이 부족했습니다..도움부탁드립니다. [2]
궁금
2015-07-01
7645
40840튜닝시 Cost / Response Time 중 어느걸 선택해야 하는지? [1]
박명수
2015-06-25
7566
40839[질문] Cent OS 6 에 오라클 9i 64비트 설치 문의 [1]
궁금이
2015-06-23
8028
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.017초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다