Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chapter 9.4 ~ 10.3.3 #7

Open
Tianea2160 opened this issue Nov 11, 2022 · 3 comments
Open

chapter 9.4 ~ 10.3.3 #7

Tianea2160 opened this issue Nov 11, 2022 · 3 comments

Comments

@Tianea2160
Copy link
Member

No description provided.

@Tianea2160 Tianea2160 changed the title chapter 9.4 ~ 10.3.2 chapter 9.4 ~ 10.3.3 Nov 11, 2022
@Tianea2160
Copy link
Member Author

@doxxx93
Copy link
Member

doxxx93 commented Dec 20, 2022

  1. 서브 쿼리와 조인 쿼리 중 우선적으로 고려해야되는 것은(성능이 나은 것은?)
    • 임시 테이블과 관련이 있다.
  2. 실행 계획의 id 칼럼은 테이블의 접근 순서를 의미한다? (O / X)
    • Extra 칼럼은 이름과 다르게 성능 튜닝에 중요한 요소이다.

@jojiapp
Copy link
Collaborator

jojiapp commented Dec 20, 2022

인덱스 힌트 종류와 각각의 특징

  • USE INDEX
    • 옵티마이저에게 특정 테이블의 인덱스를 사용하도록 권장하는 힌트
    • 인덱스 힌트가 주어짖면 옵티마이저는 사용자의 힌트를 채택하지만 항상 그런것은 아님
  • FORCE INDEX
    • USE INDEX와 동일하나 옵티마이저에게 조금 더 강한 힌트
  • IGNORE INDEX
    • USE INDEX와는 반대로 특정 인덱스를 사용하지 못하도록 권장하는 힌트
    • 풀 테이블 스캔을 사용하도록 유도하기 위해 사용하기도 함

서브쿼리(쿼리블록)을 옵티마이저 힌트로 사용하는 방법

  • QB_NAME(서브쿼리 테이블명) 을 통해 쿼리 블록에 이름을 부여해야함
EXPLAIN
SELECT JOIN_ORDER(e, s@subp1)
COUNT(*)
FROM empoyees e
WHERE e.first_name='Matt'
AND e.emp_no IN 
	(SELECT OB_NAME(subp1) s.emp_no
		FROM salaries s
		WHERE s.salary BETWEEN 50000 AND 50500);

@doxxx93 doxxx93 closed this as completed Dec 27, 2022
@doxxx93 doxxx93 reopened this Dec 27, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants