문의에 대해 답변이 잘 안 올라오네요.. 헤혀~
다름이 아니라, 아래 쿼리 성능 관련하여, 문제를 해결하고자 쿼리는 FIRST 키워드를 사용해서 바꾸어 보려고 하는데, 아 글씨 FIRST 키워드가 SubQuery에서는 안 되는 것 같아요.
SELECT FIRST 5 a.id, b.id FROM aaa a, bbb b WHERE a.id = b.id AND a.id NOT IN (SELECT FIRST 5 a.id FROM aaa a, bbb b WHERE a.id = b.id)
와 같은 쿼리에서 아래와 같은 에러가 발생합니다.
[Informix][Informix ODBC Driver][Informix]Cannot use "first" in this context.
어떻게 하면 될까요? 쿼리를 두 개로 분리해서 SubQuery의 결과를 , 처리해서 그대로 돌려보려하니 너무 오래 걸리는군요.
MS-SQL에서는 위와 같은 쿼리로 하면 잘 되거든요? 또한 FIRST 0도 에러가 발생하네요. TOP 0는 에러가 아닌데 말이죠...
비슷한 거 같으면서도 이런 차이 때문에 애를 먹이네요...
그리고, 위와 같은 경우에 INDEX를 걸었을 때가 걸지 않았을 때보다 훨씬 느려지는 것 같은데 그 이유와 해결 방법을 알고 싶습니다.
하 참, 어렵네요.
좋은 답변 부탁드립니다.
그럼.
|