2017-05-03 5 views
1

하나의 쿼리에서 20 가지 다른 기능을 사용하고 있습니다. 실행에는 6 시간이 걸립니다. 그 기능을 하나의 패키지에 넣고 패키지를 통해 호출하면 퍼포먼스가 향상되는지 여부하나의 쿼리에서 20 개의 다른 함수를 사용하고 있습니다. 실행에는 6 시간이 걸립니다. 내가 사용하는 패키지에 차이가 있다면

+0

아니오 결정적이라면 (결정적이라면) 12c에서'pragma udf'가 도움이 될 수 있습니다. 또는'select from dual' 하위 쿼리에서 그들을 래핑하여 스칼라 하위 쿼리 캐싱을 얻을 수 있습니다. , 또는 기능을 포기하고 SQL에 로직을 넣을 수 있습니다. 그것은 모두 그들이하는 일에 달려 있습니다. –

답변

1

패키지는 분명히 갈 수있는 방법이지만 코딩의 표준 이유와 성능면에서 더 그렇습니다. 성능상의 차이가 비즈니스 로직을 동일하게 유지한다면 많은 것을 볼 수 없을 것입니다.

이는 절차를 통한 패키지 사용에 대해 설명합니다. 그들은 또한 성능에 대해 말합니다 : https://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:7452431376537