o

오라클 디비 사용시 서브쿼리시 주의할점!

오라클 디비를 사용할때 간간히 서브 쿼리를 사용한다
 
SELECT * FROM employees
WHERE job_id = (SELECT job_id FROM jobs WHERE job_title = 'Sales Manager');
식으로 되어 있을때
서브 쿼리 SELECT job_id FROM jobs WHERE job_title = 'Sales Manager' 값이 kkk 라고 하면
 
SELECT * FROM employees
WHERE job_id = 'kkk';
라고 생각하기 쉽다
 
그러나 이거는 db엔진 마음이다
 
보통은
SELECT * FROM employees
WHERE job_id = 'kkk';
처럼 작동한다
 
그러나 후자가 될때는
job_id를 검색할때마다 서브쿼리를 돌린다
거디다 실수로 서브쿼리에 index 처리 마저 안했다면 ㅡㅜ
전 그런 사이트를 본적이 있었습니다
하하하^^ 속도 느려지는게 예술입니다
쓰신다음 대략적인 속도 한번 확인해 보세요. 
 
 
|

댓글 1개

그래서 강제로 hint 를 주지 않나요?
오라클 쿼리 해본지 백만년 된 1인..
where in 쿼리는 oracle에서 좋지 않은 방법이라고 배웠었던거 같습니다.
exist가 가능하면 그걸로 바꿔서 쓰는 형태가 좋다고..
댓글을 작성하시려면 로그인이 필요합니다. 로그인

개발자팁

개발과 관련된 유용한 정보를 공유하세요. 질문은 QA에서 해주시기 바랍니다.

+
분류 제목 글쓴이 날짜 조회
PHP 14년 전 조회 2,775
PHP 14년 전 조회 3,477
jQuery 14년 전 조회 2,809
기타 14년 전 조회 1,891
PHP 14년 전 조회 4,677
기타 14년 전 조회 1,900
Flash 14년 전 조회 2,075
JavaScript 14년 전 조회 1,774
PHP 14년 전 조회 2,573
JavaScript 14년 전 조회 2,134
jQuery 14년 전 조회 7,130
PHP 14년 전 조회 4,051
PHP 14년 전 조회 2,414
MySQL 14년 전 조회 5,055
기타 14년 전 조회 2,726
jQuery 14년 전 조회 5,805
PHP 14년 전 조회 7,733
PHP 14년 전 조회 2,275
PHP 14년 전 조회 2,389
JavaScript 14년 전 조회 1,756
PHP 14년 전 조회 2,394
PHP 14년 전 조회 6,407
jQuery 14년 전 조회 2,785
기타 14년 전 조회 2,638
jQuery 14년 전 조회 2,737
MySQL 14년 전 조회 3,146
MySQL 14년 전 조회 2,241
jQuery 14년 전 조회 3,769
PHP 14년 전 조회 2,536
PHP 14년 전 조회 1,780
🐛 버그신고