MySQL에서 조회 성능 개선을 위해 가장 자주 사용되는 Index에 대해 알아보겠습니다.(해당 내용은 InnoDB 스토리지 엔진을 기준으로 작성했습니다.) MySQL 공식문서에서 Index는 Optimization 영역으로 구분되어 있습니다.특히, 조회 성능을 높이는 최고의 방법으로 Index를 직접적으로 언급하며, 인덱스의 사용을 강조하고 있습니다.더보기 인덱스란?공식문서에는 다음과 같이 작성되어 있습니다. MySQL can quickly determine the position to seek to in the middle of the data file without having to look at all the data. This is much faster than reading every row..
WHERE, HAVING, CASE WHEN은 SQL에서 조건을 처리하는 데 사용되지만, 각각의 용도와 사용되는 위치가 다릅니다.WHERE:용도: 데이터베이스에서 행을 필터링할 때 사용합니다.사용 위치: SELECT 문, UPDATE, DELETE 등에서 사용할 수 있으며, 집계 함수가 적용되기 전에 조건을 걸 때 사용합니다.예시:SELECT * FROM 테이블명 WHERE 조건;HAVING:용도: 집계 함수의 결과를 필터링할 때 사용합니다. 즉, GROUP BY로 그룹화된 데이터에 대해 조건을 걸 때 사용됩니다.사용 위치: GROUP BY 절 이후에 사용됩니다.예시:SELECT 컬럼명, COUNT(*) FROM 테이블명 GROUP BY 컬럼명 HAVING COUNT(*) > 1;CASE WHEN:용도:..
RDB( Relational Data Base) (SQLDB) key와 value들의 간단한 관계를 테이블화 시킨 전산정보 데이터베이스 장점 정형화된 데이터를 저장하기 때문에 데이터의 형태와 크기를 미리 정하고 2차원의 테이블 단위로 구분하여 데이터 저장 가능 트랜잭션을 통해 ACID (원자성, 일관성, 격리성, 지속성, Atomicity, Consistency, Isolation, Durability )를 보증하여 안정적인 데이터 관리 가능 조인(Join)을 포함해 복잡한 조건을 포함하는 데이터 검색이 가능하다. (복잡한 질의 처리 가능) 데이터베이스 정규화, 데이터 중복성을 줄이고 무결성을 개선하는 설계 기법 사용 무결성: 데이터가 전송, 저장되고 처리되는 모든 과정에서 변경되거나 손상되지 않고 완전..