채택완료

SQL문 UNION 관련해서 질문 드립니다.

2017-06-30 (금) 13:39:08 2,373

A테이블

 date

 code

 name

 price

 2017-06-05

 AAA

 공책

 100

 2017-01-10

 AAA

 연필

 200

 2017-02-30

 AAA

 필통

 300

B테이블

 date

 code

add_name

 add_price

 2017-06-30

 AAA

연필심

 10

 2017-05-07

 AAA

 샤프심

 11

 2017-04-22

 CCC

 봉지

 23

 2016-12-21

 BBB

 샤프심

 11

SQL문 이용해서 원하는 데이터

 date

code

 name

 price

 code

 add_name

 add_price

 2017-06-30

 AAA

 AAA

 연필심

 10

 2017-06-05

 AAA

 공책

 100

 AAA

2017-05-07 

 AAA

 AAA

 샤프심

 2017-02-30

 AAA

 필통

 300

 AAA

 2017-01-10

 AAA

 연필

 200

 AAA

A 테이블 하고 B 테이블이 있는데 WHERE절이 code가 AAA이어야 하고

date 필드가 DESC가 되서

A, B 테이블이 UNION해서 3번째 표대로 출력을 하고 싶습니다.

Copy
SELECT data, code, name, price FROM A WHERE code=AAAUNION ALLSELECT data, code, add_name, add_price FROM B WHERE code=AAA

이렇게 일단 해보았는데 BBB 테이블의 컬럼명이 AAA테이블 컬럼명으로 대체되고..

3번째 테이블처럼 출력을 할려면 어떻게 해야되나요?

|

답변 2개 / 댓글 1개

채택된 답변
+20 포인트

select * from (

select date, code, name, price, '' add_name, '' add_price from a where code='AAA'

union all

select date, code, '' name, '' price, add_name, add_price from b where code='AAA' 

) a order by date desc

add_name이 name으로 대체 되고 그런식인가요? 

SELECT data, code, add_name AS name, add_price AS price FROM B WHERE code=AAA


제 답변이 맞아면 위에 코드대로 하시면 될거에요.

답변에 대한 댓글 1개

아닙니다 ㅠ,ㅠ 그리고 A 테이블은 왜 안불으죠?

답변을 작성하려면 로그인이 필요합니다.