본문 바로가기

728x90
반응형
SQL
728x90
반응형
3

서브쿼리 종류 **서브쿼리(Subquery)**는 SQL에서 하나의 쿼리 내부에 포함된 또 다른 쿼리를 의미합니다. 서브쿼리는 메인 쿼리의 데이터를 필터링하거나 계산하는 데 사용되며, 다양한 형태로 분류됩니다. 다음은 서브쿼리의 주요 종류와 특징입니다:1. 단일 행 서브쿼리 (Single-Row Subquery)정의: 서브쿼리가 **하나의 행(row)**만 반환하는 서브쿼리입니다.사용 연산자: =, >, =, 등 단일 값과 비교하는 연산자.예시:SELECT EMP_NAME, SALARYFROM EMPLOYEESWHERE SALARY = (SELECT MAX(SALARY) FROM EMPLOYEES);서브쿼리는 MAX(SALARY)를 계산하여 하나의 값을 반환합니다.2. 다중 행 서브쿼리 (Multi-Row Subqu.. 2024. 12. 17.
SQL Indexing은 왜 필요할까? 어떻게 빨라지는 걸까? Root   Branch   Leaf  인덱싱은 포인터 구조랑 비슷함.테이블 풀스캔을 하지 않고도 리프 블럭에서 갖고 있는 주소를 참조해서 데이터를 찾아낼 수 있기 때문에 빨라짐. sequential access와 random access는 각 쓰임이 달라서, 상황에 맞게 해야한다. 풀스캔이 무조건 안 좋은 건 아님. 최종적으로 출력될 데이터가 테이블 데이터의 10~15% 이상이면 성능상으로 풀스캔이 나음. 옵티마이저가 늘상 정확한 계획을 수립하는 건 아니기 때문에 풀스캔하는,, 성능이 오히려 안 좋게 하는 경우로 보인다면 힌트를 넣어서 실행계획을 수정해주는 것이 좋음. 하지만 풀스캔이라고 해서 무조건 힌트 넣으면 안됨. 위와 같은 경우 때문에.. 인덱스를 걸어놓고 대량의 마이그레이션을 하면 어어어엄청 .. 2024. 12. 16.
SQL TUNING : Soft Parsing, Hard Parsing 튜닝 방법은 힌트 추가, SQL 재작성, 인덱스 생성 또는 변경 세 가지로 크게 나뉘는데, 보통은 힌트 추가로 끝냄.인덱스 생성이나 변경이 획기적으로 성능을 좋게 할 수도 있지만 가장 리스키하기도 하기 때문에운영시간에 반영하는 건 절대 추천하지 않는다. Soft Parsing : SQL과 실행계획을 라이브러리 캐시에서 찾아서 바로 실행하는 것- 문법만 똑같다고 소프트 파싱이 되는 게 아님, 모든 텍스트가 똑같아야지 가능 Hard Parsing : 모오든 과정을 다 거쳐서 실행(최적화 과정 포함)- 돈 많이 듦.  WHERE 절에 함수를 씌우는 건 정말 지양해야 하는 코딩 방법임- > 데이터 어떻게 움직이는지를 안다면 WHERE에 하면 안됨(https://www.mssqltips.com/sqlservert.. 2024. 12. 16.