by ekujb [MySQL] [2014.12.17 23:05:27]
안녕하세요.
중복행 제거 관련해서 문의 드립니다.
테이블1 데이터가
100, 200, 300, 400 이렇게 있고
테이블2 데이터가
300, 400, 500, 600 있을때
쉽게 말해 테이블1 에서 테이블2에 있는 중복된 데이터를 제거하고 싶습니다.
결과는 100, 200 이 나와야 정상이겠죠, 찾아보니까 GROUP BY나 DISTINCT 얘기밖에 없어서 고수님들께 도움 요청 드립니다.
참고로 MySQL 입니다. 감사합니다.
mysql에는 minus가 없어서 보통 left join을 이용한 방법을 많이 쓰더군요..
select a.id
from 테이블1 a left join 테이블2 b on a.id = b.id
where b.id is null
select * from t1 where not exists ( select 'x' from t2 where t1.col1 = t2.col1 )
SELECT * FROM A (100, 200, 300, 400) MINUS SELECT * FROM B (300, 400, 500, 600) -- 결과 : 100, 200
악... 죄송합니다.. mysql 은 안되군요... ㅎㅎ 유령회원님이 말씀주셨네요...