SQL/sql 문법(mysql, mariaDB)
UNION 코드로 알아보기
읽히는 블로그
2024. 5. 2. 16:12
▤ 목차
구조가 일치하는 두 개 이상의 테이블 자료 합쳐볼 수 있다.
원래 테이블은 그대로 유지된다.
✔ UNION
💻 코드로 보기
#sangpum1
CREATE TABLE sangpum1(bun INT, pummok varchar(20) NOT NULL);
INSERT INTO sangpum1 VALUES(1,'사과');
INSERT INTO sangpum1 VALUES(2,'오랜지');
INSERT INTO sangpum1 VALUES(3,'바나나');
SELECT * FROM sangpum1;
#sangpum2
CREATE TABLE sangpum2(num INT, sangirum varchar(20) NOT NULL);
INSERT INTO sangpum2 VALUES(10,'토마토');
INSERT INTO sangpum2 VALUES(11,'참외');
INSERT INTO sangpum2 VALUES(12,'딸기');
INSERT INTO sangpum2 VALUES(13,'오이');
SELECT * FROM sangpum2;
SELECT bun AS 번호, pummok AS 상품명 FROM sangpum1
UNION
SELECT num , sangirum FROM sangpum2;
👏 결과
중복된 값을 제거하고 보여준다.
중복된 값을 제거하는 연산이 추가로 수행되기 때문이다.
즉, 연산이 추가되어 있기때문에 union all보다 속도가 느리다.
`union all` 키워드가 있는데,
여러 테이블을 찹쳐서 하나의 쿼리문으로 만들어주는 방법이다.
중복된 값을 모두 보여준다.
👻 JOIN과 차이점
join은 두개의 테이블을 엮어 원하는 데이터를 추출하는 키워드이다.
JOIN은 새로운 열로 결합한다. 수평 결합을 한다.
UNION은 새로운 행으로 결합한다. 수직 결합을 한다.