select * 사용 금지
-> 필요한 컬럼만 조회해서 불필요한 리소스 방지
Like 검색 시 와일드카드(%) 끝에 작성
UNION에는 중복 값을 제거하는 기능 존재해 같이 사용할 필요X
Distinct와 Group By를 같이 사용XXX
Group By 절에 입력된 칼럼을 그룹화해서 Distinct와 사용할 필요X
RDBMS마다 다르지만 서브 쿼리에서 Order By를 사용할 경우 많은 비용 발생
서브 쿼리의 결과가 많으면 Exists가 더 나은 성능 제공.
그렇지 않으면 In 사용
?
Exists는 일치하는 항목이 발견되는 즉시 검색 프로세스를 종료하지만,
In은 모든 항목을 비교해서.
(조건 부여 시, 가급적 기존 DB값에 별도의 연산 X
->
암시적 변환은 수행하는데 불필요한 리소스가 소모되어 동일한 타입으로 값을 비교하는게 좋다.
쿼리 실행 순서에서, where절이 having절보다 먼저 실행.
where절로 미리 데이터 크기를 작게 만들면,
group By에서 다뤄야하는 데이터 크기가 작아져서 보다 효율적인 연산 가능