작성일자 : 2023-11-05 Ver 0.1.1 0. Intro Oracle에서 같은 값을 찾기 위해서는 서브쿼리나 GROUP BY 및 HAVING 절을 사용할 수 있지만, 분석함수(OVER 절)를 사용하는 것이 가장 효율적이다. 같은 값을 찾기 위해 동명이인을 찾는다는 시나리오를 설정했을 때, 동일한 이름이 여러 건 조회되었을 경우일 수도 있고, 동일한 이름이 여러 건 조회되고 동일한 이름 내에서 생년월일 등 추가로 식별할 수 있는 조건이 다를 경우 동명이인이라고 판단할 수 있다. 분석 함수 및 GROUP BY 에 대한 내용은 아래 포스팀을 참고하자. [SQL]PARTITION/WINDOW 작성일자 : 2023-07-12 수정일자 : 2023-07-23 Ver : 0.1.3 1. 분석 함수(Analy..
groupby
작성일자 : 2023-10-28 Ver 0.1.1 0. Intro 일반적으로 Sales와 관련된 데이터를 조회하거나 Tableau 대시보드 개발하고 나면 월별, 분기별, 연도별 혹은 제품과 같은 Dimension별로 GROUP BY를 이용하여 집계된 값을 확인한다. 그리고 때에 따라 소계나 총합계 데이터가 필요할 때도 있다. 소계나 총계를 구하기 위해서 쿼리를 다시 작성해도 되지만, GROUP BY에서 ROLLUP 함수를 통해서 소계 및 총합계를 구할 수 있다. GROUP BY를 다룬 아래 글에서도 물론 ROLLUP과 CUBE, GROUPING SETS에 대해서 언급 했지만, 이번 포스팅에서는 ROLLUP에 대해서 집중정으로 정리해보려 한다. ROLLUP 함수는 실무에서도 정말 정말 많이 사용되는 함수인..
작성일자 : 2023-09-23 Ver 0.1.1 SQL에는 집약 함수(Aggregate Function)라고 하는, 다른 함수와는 구별해서 부르는 함수가 있다. COUNT SUM AVG MIN MAX 위 5개 함수는 가장 대표적이면서 익숙한 함수이고, 이 외에도 분산, 상관과 같은 통계적 자료를 구하기 위한 함수들이 많이 구현되고 있다. 1. 여러 개의 레코드를 한 개의 레코드로 집약 (비집약 테이블) id data_type data_1 data_2 data_3 data_4 data_5 data_6 Jim A 100 10 34 346 54 Jim B 45 2 167 77 90 157 Jim C 3 687 1355 324 457 Ken A 78 5 724 457 Ken B 123 12 178 346 85..
작성일자 : 2023-07-10 수정일자 : 2023-07-23 Ver 0.1.2 1. 사용법 오라클 SQL에서 GROUP BY 절을 사용하여 그룹별 건수나 합계 등의 집계 값들을 얻을 수 있다. 그룹별 집계된 결과 중 원하는 조건의 결과만 필터링하기 위해서는 HAVING절을 사용하여 필터 조건을 사용할 수 있다. Syntax SELECT COL1, COL2 FROM TABLE WHERE CONDITION GROUP BY COL1, COL2, ... GROUP BY 절은 GROUPING 컬럼/표현식들의 값이 같은 행들로 행 그룹(group of rows)을 생성하고, 각 행 그룹당 1개의 행으로 그룹화(Group)한다. ex) JOB 컬럼 값이 'CLERK'인 4개의 행들로 행 그룹이 생성되고, 이는 최..