두 테이블을 하나처럼..

두 테이블을 하나처럼..

QA

두 테이블을 하나처럼..

답변 5

본문

선생님들 안녕하세요

mysql 쿼리문에대해서 질문이있습니다...

예를들어 g5_point 테이블 량이 많아 g5_point_backup테이블로 압축을 하여 옮겼을때..

조회할때는 두테이블을 합쳐서 하나의 테이블처럼 만들고 조회를 하고 싶은데 

이때 사용하는게 union all이 맞나요..?

union all을 사용해보았는데,


select sum(po_point) as sum from g5_point union all select sum(po_point) as sum from g5_point_backup where mb_id = "admin"

이런식으로 조회를 하면 결과값이 두개로 나와서... 두테이블의 sum이 한번에 나오게하고싶을때는 어떻게하면 좋을까요..?

조언 부탁드립니다 ㅠ.ㅠ

이 질문에 댓글 쓰기 :

답변 5

두개의 테이블의 레코드가 중복이 아니라.

분할의 내용을 담고있는것이라면


select sum(po_point) as sum from 
  (
   select * from g5_point a
   union all 
   select * from g5_point_backup b
  ) aa

와 같이 접근해보세요

https://sun-kakao.tistory.com/53

선생님 답변 감사드립니다!
join에대해서 질문하나만 드려도될까요 ..?
두테이블에서 5월달 합산을 구하고싶을때
select sum(po_point) as sum from g5_point a join g5_point_backup b where a.po_datetime like "2023-05%" or b.po_datetime like "2023-05%" 이런식으로 해보았는데....
po_point가 모호하다고 하는데..
어떤식으로 조회를 해야하는건가용..?

 

중복된 데이터를 하나로 합치심이 좋을거 같습니다.

아래와 같이 중복을 제거하여 업데이트 하심이 좋아보이네요.

 

update table2 set `holiday`=1 where exists 

(select * from table1 where table1.date = table2.date)

 

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 1,543
© SIRSOFT
현재 페이지 제일 처음으로