본문 바로가기

Database/Oracle

튜닝 시 성능에 미치는 sql..알아둘 것

1. 결과물을 자동 정렬하는 명령

distinct,  group by,  union

2. 컬럼명이 조금만 조작되도 바뀌어서 보임

 

3. select는 컬럼만 제한을 둘 수 있음. . 데이터는 변하지 않음. 그래서 where 조건을 줌

where 절을 행 제한을 두는 조건절 -  분석을 제일 먼저 함

 

4.튜닝하는데 제일 중요, 인덱스를 잘 걸어야 성능이 좋아

Select 컬럼명, 컬럼명, … from table_name where 컬럼명 연산자 조건


5.Between이 좋을까? And가 좋을까?

Between and로 변환된 다음 실행

 

6.명령이 같아도, 대소문자를 바꿔서 쓰면 실무에서는 다시 분석하기 때문에 한 가지로 통일해서 쿼리 날려


7.쿼리는 대소문자 구분을 안하지만, 데이타는 대소문자 구분을 해


8.함수 조작 등 하면 인덱스 적용 못함. 튜닝을 위해서라면 보통 때는 안쓰는 게 좋아

 

9. in 연산자

select * from emp

where job in ('salesman', 'manager');

--or랑 같은 결과를 내지만, or보다는 in이 길어짐


10. where절에서 조건을 걸면 메모리에 가져오는 행 수가 많이 줄어드는데,
having으로 조건이 가면 메모리에 가져오는 행 수가 많기 때문에
,
having으로 조건을 가져오는 것은 절대 권장이 아니다!!

 

반응형

'Database > Oracle' 카테고리의 다른 글

LEAD와 LAG 분석 함수  (0) 2009.01.16
[펌] in 과 not exists 차이  (0) 2009.01.15
SQL 명령  (0) 2009.01.15
DML 정리  (0) 2009.01.15
sqlplus 명령&팁 정리  (0) 2009.01.15