안녕하세요.
단순한 웹 프로그램만을 해서 그런지, 프로그램 한동안 놓고 있어서 그런지.
쿼리가 잘 안되어 질문 올립니다.
합계를 구하면서, left outer join 과 같이 "테이블_1" 의 row 는 모두 출력하고,
"테이블_2" 의 내용중 장비 명칭이 동일한 데이터만 날짜 기간 중 날짜별 sum() 을 출력하고자 합니다.
그리고, 맨 마지막에 총합계도 구하려고 합니다
------------------------------------------------------------------------------------------------
=================
[ 테이블_1 ]
장비
a
b
c
d
=================
[ 테이블_2 ]
날짜 장비 개수
12/1 a 1
12/1 a 2
12/1 b 3
12/1 b 4
12/2 c 5
12/2 c 6
=================
□□□□□□□□□□□□□□□□□□□□□□□□□□
원하는 결과 <<<<<<<<<<<<<<<<<<
-------------------------------------
12/1 a 3
b 7
c 0
d 0
-------------------------------------
합 10
-------------------------------------
12/2 a 0
b 0
c 11
d 0
-------------------------------------
합 11
-------------------------------------
-------------------------------------
전체합 21
□□□□□□□□□□□□□□□□□□□□□□□□□□
다음은 만들어본 쿼리
SELECT
B.날짜, B.장비
FROM
테이블_1 A as A
, 테이블_2 B as B
WHERE
A.장비 = B.장비(+)
AND A.장비타입=301
AND B.날짜 BETWEEN '12/01' AND '12/02'
GROUP BY
B.날짜,
B.장비
ORDER BY
B.날짜,
B.장비
이렇게 조회를 하면,
12/1 a 3
b 7
12/2 c 11
이렇게 나옵니다.
"원하는 결과" 와 다르게, 지금 테이블_2 에 존재하는 데이터만 sum 된 결과만 나옵니다.
도움 부탁드립니다.
p.s
장비타입은 테이블_1 에서 a,b,c,d 를 구해오기 위한 조건 데이터 입니다. |