반응형
테이블이나 데이터를 합쳐야 하는 경우 UNION 또는 UNION ALL을 사용 한다.
정확하게는 mysql에서 UNION DISTINCT와 UNION ALL 두 종류로 나뉜다고 볼 수 있다.
UNION이라고 쓰는게 UNION DISTINCT로 된다는 것이다.(글자가 생략되어 있다고 보면 된다.)
DISTINCT는 일반적으로 쓰는 그대로 중복을 제거 해준다는 뜻이다.
그런데 여기서 문제점은 속도 저하, 그리고 무엇을 기준으로 DISTINCT를 해준다는 것인지 이다.
그리고 또 하나 확인 할 점! 중복 제거는 모든 컬럼을 기준으로 한다는 것.
상황에 따라서 사용이 있겠지만 아무래도 UNION DISTINCT를 많은 데이터가 있는곳에서 사용하기에는 음....
정확하게 아직 데이터가 너무 많아 발생한 문제는 없었는데, 겪어봐야 알듯 하다.(상황을 겪으면 내용 추가 예정)
728x90
'DATABASE' 카테고리의 다른 글
MySQL ogr2ogr(공간정보 저장에 대해서) (0) | 2021.07.28 |
---|---|
varchar타입에 order by를 써야하는 경우 (0) | 2021.07.20 |
date, datetime 속도 이슈 정리(feat timestamp를 쓰도록...) (0) | 2021.06.08 |
mysql 인덱스 확인, 추가, 삭제 (0) | 2021.04.21 |
두개의 위도 경도 사이의 거리 계산하기 (0) | 2021.03.22 |
댓글