union

· SQL/MySQL
작성일자 : 2024-09-08Ver 0.1.10. 배경쿼리를 짜다보면 상황에 따라 FULL OUTER JOIN이 필요할 때가 있다.A, B 테이블이 있다고 했을 때 KEY값으로 Mapping이 안됐을때에도 Table에 포함시키는 JOIN이다. [SQL]JOIN작성일자 : 2023-07-05 수정일자 : 2023-08-06 Ver 0.1.4 1-1. 필요성 관계형 데이터베이스의 구조적 특징으로 정규화를 수행하면 의미있는 데이터 집합으로 다수개의 테이블들이 구성되고 각 테이블끼리junius96.tistory.com상용화된 RDB 중 Oracle에서는 INNER, LEFT, RIGHT와 동일하게 FULL OUTER JOIN이라는 구문을 통해 이를 구현할 수 있지만,MySQL에서는 아쉽게도 이를 지원하지 않는..
· SQL/Oracle
작성일자 : 2023-11-05 Ver 0.1.1 0.Intro Oracle에서 UNION (ALL)을 사용할 때 ORDER BY 절의 정확한 방법을 숙지하지 않으면 오류가 발생할 수 있다. UNION (ALL) 쿼리문이 모두 끝나고 마지막에 ORDER BY 절을 선언해야 하며, ORDER BY 절에 사용할 수 있는 칼럼은 UNION의 첫 번째 쿼리문(첫번째 ~ N-1 번째)의 별칭 또는 칼럼의 순번이다. (쿼리문은 Oracle의 LIVESQL을 통해 실행) SELECT empno ,ename ,job FROM SCOTT.emp WHERE job = 'SALESMAN' ORDER BY emp_job ,emp_nm UNION ALL SELECT empno ,ename ,job FROM SCOTT.emp W..
작성일자 : 2023-09-21 Ver 0.1.1 앞서 UNION을 사용하면 안좋은 경우에 대해서 살펴보았지만, UNION을 사용해야하는 경우도 있다. UNION을 사용하는 것이 오히려 성능적으로 좋은 경우도 있다. UNION을 사용할수 밖에 없는 경우 머지 대상이 되는 SELECT 구문들에서 사용하는 테이블이 다른 경우가 대표적이다. SELECT col_1 FROM Table_A WHERE col_2 = ‘A’ UNION ALL SELECT col_3 FROM Table_B WHERE col_4 = ‘B’; 물론 그렇다고 CASE 식을 사용할 수 없다는 것은 아니다. FROM 구에서 테이블을 결합하면 CASE 식을 사용해 원하는 결과를 구할 수 있다. 하지만 그렇게 하면 필요 없는 결합이 발생해서 성능..
작성일자 : 2023-09-19 Ver 0.1.1 집계를 수행하는 쿼리를 작성할 때, 쓸데없이 길어지는 경우를 자주 볼 수 있다. 아래의 예시 테이블을 살펴보자. (인구 테이블) Perfecture(지역이름) Sex(성별) Pop(인구) 성남 1 60 성남 2 40 수원 1 90 수원 2 100 광명 1 100 광명 2 50 일산 1 100 일산 2 100 용인 1 20 용인 2 200 (원하는 결과) Perfecture Pop_mem Pop_wom 수원 90 100 일산 100 100 성남 60 40 광명 100 50 용인 20 200 1. 집계 대상으로 조건 분기 1) UNION을 사용한 방법 이 문제를 풀 때 절차 지향적인 사고방식으로 접근한다면, 일단 남성과 여성 인구를 지역별로 구한뒤 merge..
Unlimited Jun
'union' 태그의 글 목록