DB/DB2 [SQL] FUNCTION 수행과 SQL 성능문제 SELECT시 기존 사용자 함수를 만들어둔 것 때문에 속도가 나지 않아, 스칼라 서브쿼리로 처리했다. 그래도 속도가 잘 안나오길래 찾아보다가 구루비에서 좋은 글을(http://wiki.gurubee.net/pages/viewpage.action?pageId=27427586) 발견해서 정리해둔다. 1. FUNCTION은 최종 추출 결과만큼만 수행하자 [Function 사용 위치 변경전 ] select * from ( SELECT t1.c1, t1.c2,t2.c3,FN_C2_CODENM(t2.c4) c4 FROM FUNCTION_TABLE t1, C1_CODE_NM t2 WHERE t1.c2 = 0 AND t1.c3 = 'A' AND t1.c1 = t2.C1 AND t2.c4 IN (2, 4) order b.. 2022. 1. 24. [SQL] SELECT 쿼리 실행 순서 SQL SELECT 문의 순서를 알고나면 쿼리를 효율적으로 짜는데 도움이 된다. SELECT 문의 작성 순서와 실행순서를 정리해보자. - SELECT 작성 순서 SELECT FROM WHERE GROUP BY HAVING ORDER BY - SELECT 실행 순서 FROM : 테이블 확인 ON : 조인 조건 확인 JOIN : 테이블 조인 WHERE : 데이터 필터링 조건 확인 GROUP BY : 데이터 그룹화 HAVING : 그룹화 이후 데이터 조건 확인 SELECT : 데이터 추출 DISTINCT : 중복 제거 ORDER BY : 정렬 정리하자면, 데이터가 있는 곳을 찾아 (FROM) → 조건에 맞는 값을 찾고 (WHERE) → 원하는 데이터로 그룹짓고 (GROUP BY) → 그룹화한 데이터에서 조건에.. 2022. 1. 24. 이전 1 다음 반응형