PIVOT 절과 UNPIVOT 절
PIVOT과 UNPIVOT은 SQL에서 데이터를 행(row)과 열(column) 간 변환하는 기능을 제공하는 절입니다. 이 기능은 MSSQL, Oracle 등 일부 RDBMS에서 지원하며,MySQL과 PostgreSQL에서는 CASE WHEN 또는 GROUP BY 등을 사용하여 유사한 기능을 구현할 … Read more
PIVOT과 UNPIVOT은 SQL에서 데이터를 행(row)과 열(column) 간 변환하는 기능을 제공하는 절입니다. 이 기능은 MSSQL, Oracle 등 일부 RDBMS에서 지원하며,MySQL과 PostgreSQL에서는 CASE WHEN 또는 GROUP BY 등을 사용하여 유사한 기능을 구현할 … Read more
데이터베이스에서 조인은 데이터를 효율적으로 결합하는 핵심 기능입니다.기본적인 INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL OUTER JOIN 외에도 성능과 최적화를 위한 다양한 고급 조인 기법이 존재합니다. 1. 고급 조인 기법 개요 … Read more
스칼라 서브쿼리(Scalar Subquery)는 단일 값을 반환하는 서브쿼리입니다.즉, SELECT 문이 실행될 때 하나의 행과 하나의 열(단일 값)만 반환하는 서브쿼리를 의미합니다. 1. 스칼라 서브쿼리의 특징 ✔ 반환 값이 반드시 하나(1개 행, 1개 … Read more
Sort Merge Join(SM 조인, 정렬 병합 조인)은 두 개의 정렬된 테이블을 병합하여 조인하는 방식입니다.주로 등가 조인(=)뿐만 아니라 범위 조인(<, >, BETWEEN 등)에서도 사용될 수 있으며, 대용량 데이터 조인에 적합합니다. 1. … Read more
Nested Loop Join(NL 조인, 중첩 루프 조인)은 두 개의 테이블을 조인할 때 가장 기본적인 방법으로,하나의 테이블(외부 테이블, Outer Table)의 각 행을 반복하며 다른 테이블(내부 테이블, Inner Table)과 비교하는 방식입니다. NL … Read more
해시 조인(Hash Join)은 데이터베이스에서 두 개의 테이블을 조인할 때 사용되는 조인 알고리즘 중 하나로, 특히 대용량 데이터셋을 다룰 때 성능이 뛰어난 방법입니다.일반적으로 등가 조인(=)에서 사용되며, 테이블 크기가 크거나 인덱스가 없을 … Read more
1. 계층형 쿼리(Hierarchical Query)란? 계층형 쿼리(Hierarchical Query)는 부모-자식 관계(트리 구조)를 가진 데이터를 조회하는 SQL 기법입니다. 일반적인 SQL 쿼리는 평면적(Flat) 데이터를 조회하는 반면, 계층형 쿼리는 트리 구조(Tree Structure)를 탐색할 수 있습니다. … Read more
Oracle “Snapshot too old” 오류와 해결 방법 📌 오류 개요 Oracle에서 “Snapshot too old” 오류는 UNDO 영역 부족으로 인해 발생하는 오류입니다.특히 긴 시간 실행되는 쿼리(대량 데이터 조회, 분석 쿼리 등)에서 … Read more
Oracle에서 함수 기반 인덱스(FBI, Function-Based Index) 는 일반 인덱스가 적용되지 않는 경우에도 함수나 표현식 결과를 인덱스로 활용할 수 있도록 도와주는 강력한 기능입니다. 1. 함수 기반 인덱스(FBI)란? 조건절에서 인덱스 컬럼에 함수를 … Read more
인덱스(Index)는 데이터 검색 성능을 향상시키는 중요한 구조이지만, 시간이 지나면서 단편화(Fragmentation), 희소성(Sparse), 비대화(Bloat), 데이터 불균형(Skew) 등의 문제로 인해 성능이 저하될 수 있습니다.이 문서에서는 Index Fragmentation(인덱스 단편화) 를 비롯한 여러 인덱스 관련 … Read more