2개 TABLE을 JOIN해서 해당 필드값 종합해 새로운 필드로 나타내기
본문
우선 밑에 2개의 테이블을 봐주시길 바랍니다.
item 테이블안에 있는 정보값으로 결제를 하게되면
payment 테이블 안에 값이 저장되는 시스템입니다.
p_code로 서로 매칭되고 있습니다.
그런다음 이상태에서 서로 2개 JOIN해서 출력을 하되
3번째 표 나오는것 처럼 "item_total_price" 필드를 만들어서
payment 테이블 안에 저장되는 해당 p_code만 price가격을 종합해서 출력하고 싶습니다.
payment 테이블
no |
p_code |
price |
5 |
BBB |
3000 |
4 |
BBB |
3000 |
3 |
AAA |
1000 |
2 |
CCC |
2000 |
1 |
BBB |
3000 |
item 테이블
no |
p_code |
name |
3 |
CCC |
상품C |
2 |
BBB |
상품B |
1 |
AAA |
상품A |
SELECT *.a, *.b FROM
payment 테이블 as A LEFT JOIN
item 테이블 as B ON (A.p_code = B.p_code)
원하는 출력 값 (payment 테이블 와 ITEM 테이블 JOIN해서...)
no |
p_code |
price |
name |
item_total_price |
5 |
BBB |
3000 |
상품B |
9000 |
4 |
BBB |
3000 |
상품B |
9000 |
3 |
AAA |
1000 |
상품A |
1000 |
2 |
CCC |
2000 |
상품C |
2000 |
1 |
BBB |
3000 |
상품B |
9000 |
일단 JOIN문을 만들어 보았는데 item_total_price 도 같이 출력할려면
sql문에 어떻게 추가 해야되나요?
!-->답변 1
SELECT A.p_code, A.price, B.name, sum(A.price) as item_total_price
FROM payment as A
INNER JOIN item as B
ON A.p_code = B.p_code
GROUP BY A.p_code, A.price, B.name