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 20655 게시물 읽기
No. 20655
초보에게는 넘 어렵슴다..고수님들 도와 주세요..
작성자
김상우
작성일
2004-11-09 16:48ⓒ
2004-11-09 16:51ⓜ
조회수
1,433

COM_CODE 테이블
TEAM | NAME
01        인천
02        서울
03        경기

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

MASTER 테이블
ORG_CODE | P_CODE | SAUPBU
1        C1        01
2        C2        02
3        C3        03

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

DRIVE 테이블
P_CODE | KM
C1        50
C1        30
C2        50

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

JUYOU 테이블
P_CODE | LITER
C2        30
C3        25
C3        25
C2        10

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

합계출력
SAUPBU | KM | LITER
인천        80        0
서울        50        40
경기        0        50

이렇게 출력하고 싶은데..않나오네요..ㅡㅜ;;
==============================================================
이게 제가 짠 쿼리문 입니다..

 

고수님들 도와 주세요..

 

더 간단한 방법이 있으면 점 알려 주시고요..

 

즐거운 하루 보내세요..꾸뻑


SELECT
COM_CODE.NAME,
SUM_DRIVE.SUM_KM,
SUM_JUYOU.SUM_LITER

FROM MASTER,COM_CODE,
(
SELECT SUM(DRIVE.KM) AS SUM_KM, MASTER.SAUPBU, DRIVE.P_CODE
FROM DRIVE, MASTER
WHERE DRIVE.P_CODE=MASTER.P_CODE
GROUP BY MASTER.SAUPBU, DRIVE.P_CODE
)SUM_DRIVE,
(
SELECT SUM(JUYOU.LITER) AS SUM_LITER, MASTER.SAUPBU, JUYOU.P_CODE
FROM JUYOU, MASTER
WHERE JUYOU.P_CODE=MASTER.P_CODE
GROUP BY MASTER.SAUPBU, JUYOU.P_CODE
)SUM_JUYOU

WHERE
COM_CODE.TEAM = MASTER.SAUPBU
AND MASTER.P_CODE = SUM_DRIVE.P_CODE
AND MASTER.P_CODE = SUM_JUYOU.P_CODE

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

초보님이 거의 답을 내셨네요 ^^

 

select a.name,nvl(b.km,0),nvl(c.liter,0)
from   com_code a,
       (select a.p_code code,sum(a.km) km
          from drive a
         group by a.p_code) b,
       (select a.p_code code,sum(a.liter) liter
          from juyou a
         group by a.p_code) c,
  master d
where d.p_code = b.code(+)
  and d.p_code = c.code(+)
  and d.saupbu = a.team

 

밑에 (+) outer join 조건을 추가하시면 원하시는 결과를 얻으실 수 있습니다...

도움이 되셨으면 좋겠습니다..^^

나두초보님이 2004-11-09 17:24에 작성한 댓글입니다. Edit

답변 감사 합니다..

 

이거땜시 고민 많이 하고 있었는데..

 

술한잔 사드리지는 못해도 정말 감사합니다..^^;;

 

즐거운 하루 보내세요..^^;;

김상우님이 2004-11-09 17:41에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
20658컬럼의 길이와 타입형식 수정을 어떻게 해야되나요? [4]
왕초보
2004-11-09
2415
20657[질문] 제약조건(primary key) 생성시 성능에 관한 질문입니다. [4]
2004-11-09
5089
20656ORA-00064 에러.. 뭐가 크다고 하는데.....
이덕희
2004-11-09
1523
20655초보에게는 넘 어렵슴다..고수님들 도와 주세요.. [2]
김상우
2004-11-09
1433
20654toad 설치문제 [1]
곽상현
2004-11-09
2021
20653SELECT 시 ORA-01467 sort key too long (왕초보) ㅜ.ㅜ [2]
이윤호
2004-11-09
4306
20652테이블 컨버젼작업...고수님들 ...보세요 [1]
nagnae
2004-11-09
1053
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.018초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다