SQL - 복합 컬럼 인덱스란?
복합 컬럼 인덱스란? 두 개 이상의 컬럼을 묶어서 하나의 인덱스를 만드는 것을 말함. 다중 조건 쿼리의 성능을 최적화하기 위해 사용됨. WHERE절에서 사용되는 컬럼의 순서가 성능을 좌우함. 복합 인덱스 생성 구문 CREATE INDEX index_name ON table_name (column1, col...
복합 컬럼 인덱스란? 두 개 이상의 컬럼을 묶어서 하나의 인덱스를 만드는 것을 말함. 다중 조건 쿼리의 성능을 최적화하기 위해 사용됨. WHERE절에서 사용되는 컬럼의 순서가 성능을 좌우함. 복합 인덱스 생성 구문 CREATE INDEX index_name ON table_name (column1, col...
📚 오늘 배운 것 / 실행한 것 TIL 작성하기 영어 article 1개 해석 영어 5줄 일기 쓰기 영어 학원 숙제하기 트리 자료 구조 공부 내용 정리 인덱스 관련 내용, 쿼리 실행 계획 분석 공부 내용 정리 💡 오늘 느낀 점 오늘은 영어 article 해석, 영어 학원 숙제(단어암기), 영어 5줄 일기, 트리 자료구조 ...
커버링 인덱스란? 쿼리에 필요한 모든 컬럼을 포함하고 있는 인덱스를 뜻함. 랜덤 I/O를 줄여 성능을 향상시킴. 기본적으로 보조 인덱스는 해당 컬럼의 데이터와 기본키(PK) 값을 한 쌍으로 저장하여 인덱스를 탈 경우 컬럼의 데이터와 매핑되어 있는 기본키값을 통해 원본 데이터를 조회하게 되는데, 이렇게 인...
단일 컬럼 인덱스 활용 인덱스를 사용하는 상황은 아래와 같음. 동등 비교(=), JOIN 범위 검색(BETWEEN, >, <, LIKE 등) ORDER BY 정렬 동등 비교 인덱스 적용 X 예시 EXPLAIN SELECT * FROM articles WHERE title = 'SQL 인덱스 완벽 정리'; 결과 t...
쿼리 실행 계획이란? 실행하려는 쿼리가 어떤 방식으로 실행되는지, 인덱스를 타는지 안타는지를 확인하는 것. 실행하려는 쿼리 앞에 EXPLAIN 키워드를 붙여 확인 가능함. 구문 EXPLAIN query; 예시 EXPLAIN SELECT * FROM articles; 결과 type: 데이터베이스...
인덱스란? 특정 컬럼들의 데이터를 기반으로 생성되는 원본 테이블과는 별개의 특수한 자료 구조임. 지정된 컬럼의 값과 해당 값을 가진 실제 데이터 행의 위치(PK, 포인터 등)를 한 쌍으로 저장함. 인덱스 내부의 데이터는 항상 정렬된 상태를 유지함. B-Tree 알고리즘을 사용함. 인덱스가 붙어 있으면 ...
트리 자료구조란? 상위 노드와 하위 노드로 구성됨. 가장 상위에 위치한 노드를 루트(root)라고 함. 이진 트리란? 하위 노드를 2개까지 가질 수 있는 트리. 이진 탐색 트리: 왼쪽 하위 노드가 더 작은 값을 가지고 오른쪽 하위 노드가 더 큰 값을 가지는 것. 트리가 한쪽으로 치우치면 선형 탐색과 동일한 성능...
📚 오늘 배운 것 / 실행한 것 TIL 작성하기 영어 article 1개 해석 영어 5줄 일기 쓰기 영어 학원 숙제하기 테이블 서브쿼리, UNION, CASE문, 뷰(View) 공부 내용 정리 💡 오늘 느낀 점 오늘은 영어 article 해석, 영어 학원 숙제(단어암기), 영어 5줄 일기, SQL 테이블 서브쿼리, UNION...
뷰(View)란? 가상의 테이블을 의미함. 실제 데이터를 저장하지 않고, 미리 정의된 SELECT 쿼리를 저장해두는 개념임. 기본적으로 조회용 테이블로 사용됨. 구문 CREATE VIEW view_name AS SELECT ... 예시 CREATE VIEW v_notifications_send_status AS SELECT C...
CASE문이란? 특정 데이터를 조건에 맞게 동적으로 가공해줌. 프로그래밍에서 if-else문과 같은 역할을 수행함. CASE문은 아래와 같이 두 가지 유형으로 나뉨. 단순 CASE문 검색 CASE문 단순 CASE문 특정 하나의 컬럼이나 표현식의 값에 따라 결과를 다르게 하고 싶을 때 사용함. 구문 CASE column...