유튜브블로그Top 10
내 프로필

데브허브 안내
소개업데이트 소식

데브허브 커뮤니티

[취업을 위한 CS 지식] 37강. 효율적 쿼리

한빛미디어

2025. 10. 31.

0

#db
  • 효율적인 쿼리 작성을 위해 서브쿼리, 조인, 뷰, 인덱스 활용법을 이해하는 것이 중요합니다. 💡
  • 서브쿼리는 다른 SQL 문 내부에 포함된 SQL 문으로, 복잡한 다중 테이블 질의에 유용합니다. 🧩
  • 조인은 여러 테이블을 하나로 합치는 연산으로, INNER, LEFT OUTER, RIGHT OUTER, FULL OUTER 조인 등 다양한 종류가 있습니다. 🔗
  • INNER 조인은 두 테이블의 조인 조건을 모두 만족하는 레코드만 반환하며, 가장 일반적인 조인 형태입니다. 🤝
  • LEFT/RIGHT OUTER 조인은 기준 테이블의 모든 레코드를 포함하고, 조건에 맞지 않는 상대 테이블 필드는 NULL로 채웁니다. ↔️
  • FULL OUTER 조인은 양쪽 테이블의 모든 레코드를 포함하며, 대응되지 않는 필드는 NULL로 처리됩니다 (MySQL에서는 LEFT/RIGHT UNION으로 구현). 🔄
  • 뷰는 SELECT 문의 결과로 만들어진 가상의 테이블로, 복잡한 쿼리를 단순화하고 데이터 접근 권한을 제한하는 데 사용됩니다. 🖼️
  • 뷰는 주로 조회 목적으로 사용되며, 삽입/수정/삭제는 원본 테이블의 제약 조건 때문에 제한될 수 있습니다. 🚫
  • 인덱스는 테이블 필드에 대한 자료 구조로, 데이터 검색 속도를 크게 향상시키며 책의 찾아보기와 유사한 역할을 합니다. 📚
  • MySQL 인덱스는 클러스터형(기본 키, 테이블당 하나)과 세컨더리형(여러 개 가능)으로 나뉘며, 주로 B-트리 계열로 구현됩니다. 🌳
  • 인덱스 생성은 CREATE INDEX, 조회는 SHOW INDEXES, 삭제는 DROP INDEX 명령어를 사용합니다. 🛠️
  • 인덱스는 읽기 성능을 높이지만, 쓰기(INSERT, UPDATE, DELETE) 작업 시에는 추가적인 유지보수 비용으로 인해 성능 저하를 유발할 수 있습니다. 📉

Recommanded Videos