select count(*)
from
(
SELECT 1
FROM FTA101T a ,FCD005T b, FCD001T c, EMF_MY_COURSE_INFO d
WHERE 1 = 1
AND a.TTA101_CRS_DEV_CD = c.TCD001_CRS_DEV_CD
and a.TTA101_CRS_DEV_CD = b.TCD005_CRS_DEV_CD
AND a.TTA101_CRS_DEV_CD = d.COURSE_CODE
and a.TTA101_CRS_YY = b.TCD005_CRS_YY
AND a.TTA101_CAUSE_YN = 'Y'
AND a.TTA101_CLOSE_YN = 'Y'
AND a.TTA101_CRS_YY IN (TO_CHAR(SYSDATE, 'yyyy'), TO_CHAR(ADD_MONTHS(SYSDATE, 12), 'yyyy'))
AND a.TTA101_KIND_CD = '0001'
AND d.COMPANY_CODE = 'Z32938'
AND c.TCD001_TYPE <> 9
AND d.OPEN_YN = 'Y'
AND d.HOPE_CONFIRM_YN = 'Y'
AND d.USE_YN = 'Y'
ORDER BY a.TTA101_FROM_DT asc
);
와
select count(*)
from
(
SELECT 1
FROM FTA101T a ,FCD005T b, FCD001T c, EMF_MY_COURSE_INFO d
WHERE 1 = 1
AND a.TTA101_CRS_DEV_CD = c.TCD001_CRS_DEV_CD
and a.TTA101_CRS_DEV_CD = b.TCD005_CRS_DEV_CD
AND a.TTA101_CRS_DEV_CD = d.COURSE_CODE
and a.TTA101_CRS_YY = b.TCD005_CRS_YY
AND a.TTA101_CAUSE_YN = 'Y'
AND a.TTA101_CLOSE_YN = 'Y'
AND a.TTA101_CRS_YY IN (TO_CHAR(SYSDATE, 'yyyy'), TO_CHAR(ADD_MONTHS(SYSDATE, 12), 'yyyy'))
AND a.TTA101_KIND_CD = '0001'
AND d.COMPANY_CODE = 'Z32938'
AND c.TCD001_TYPE <> 9
AND d.OPEN_YN = 'Y'
AND d.HOPE_CONFIRM_YN = 'Y'
AND d.USE_YN = 'Y'
ORDER BY a.TTA101_FROM_DT desc
);
이 두구문의 차이점은 ORDER BY 절에 desc, asc 빡에 없습니다...
그런데 첫쿼리는 카운트가 되는 반면 두번째 쿼리는 카운트 되지 못합니다.
두번째 쿼리도 조건절을 변경할경우 결과를 얻을수 있지만.. 이 두번째 구문이 카운트를 얻지 못하는
이유가 무엇일까여...ㅡㅡ
궁금해서 미치 겠네여..알려 주세요..
|