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 40396 게시물 읽기
No. 40396
쿼리좀 도와주세요.
작성자
초보
작성일
2014-03-06 13:44
조회수
6,358

아래와 같이 tab1을 조회하다가 id와 tab2의 id가 같은 값을 만나면 tab1 의 id group의 첫번째 행에 col4 의 값을

넣고 다음 행부터는 0을 넣으려고 합니다. 단일 쿼리로 어떻게 만들어야 할까요?

도움부탁드립니다. ㅜㅜ 수고하세요.

tab1 : 
ID COL1 COL2 COL3
1 AA aa 1000
1 BB bb 2000
1 CC cc 1000
2 DD dd 500
3 EE ee 1000
3 FF ff 1000
tab2: 
ID COL4
1 5000
2 3000
3 2000
조회결과
ID COL1 COL2 COL3 COL4
1 AA aa 1000 5000
1 BB bb 2000 0
1 CC cc 1000 0
2 DD dd 500 3000
3 EE ee 1000 0
3 FF ff 1000 2000

 

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

 select a.*  ,
        case when row_number() over (partition by a.id order by a.id ) = 1 then b.col4
             else 0
         end col4 from tab1 a left outer join tab2 b on a.id = b.id
 order  by a.id,a.col1

정종우(정종우)님이 2014-03-06 17:21에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
40400where rownum <= 10 order by crt_date desc 문의 [1]
이성근
2014-03-10
6374
40398이런 쿼리 가능할까요? [5]
이태우
2014-03-10
6961
40397뷰에 널값으로 컬럼 하나 추가 가능한가요?
민규
2014-03-07
6460
40396쿼리좀 도와주세요. [1]
초보
2014-03-06
6358
40395이태리에서 db작업이 가능할가요? [2]
김삼
2014-03-06
6323
40394blob, clob 파일성 필드를 오라클 암호화 루틴으로 암호화가능한가요?
유정헌
2014-03-05
7252
40393쿼리 관련해서 도움을 좀 부탁드립니다. [1]
질레판
2014-03-05
6872
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.022초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다