안녕하세요. Limit 명령어 질문 하나만 드릴께요.
아래 쿼리에서 제가 하고싶은 것은 정렬된 데이터의 9건만 가져오고 싶습니다.
ORDER BY 는 최상위 FROM 절 Y 안에서 이미 했구요.
정렬된 데이터 Y 까지는 확인 했습니다. 그런데 Y 의 데이터를 Limit 하니 T_MEMBER 테이블의 상위 9건이 나옵니다.
ORDER BY 가 먹히지 않은 듯 합니다.
어느 부분이 잘 못되었는지, 정렬된 (ORDER BY) 데이터를 Limit 하려면 어떻게 해야하는지 답변 부탁 드립니다.
감사합니다.
- 쿼리 -
SELECT Y.*
FROM (
SELECT A.EMP_CD,
A.MEMBER_NM,
B.COMPANY_NM,
(SELECT X.CD_NM FROM T_CODE X WHERE X.LGRP_CD = '0002' AND A.CLASS_CD = X.MGRP_CD) CLASS_NM,
C.AUTH_CD,
(SELECT X.CD_NM FROM T_CODE X WHERE X.LGRP_CD = '0003' AND C.AUTH_CD = X.MGRP_CD) AUTH_NM,
B.TEL1,
B.TEL2,
B.TEL3,
B.HP1,
B.HP2,
B.HP3,
B.EMAIL
FROM T_MEMBER A LEFT OUTER JOIN T_MEMBER_AUTH C ON A.EMP_CD = C.EMP_CD,
T_MEMBER_ADDR B
WHERE A.EMP_CD = B.EMP_CD
ORDER BY AUTH_CD DESC, MEMBER_NM
) Y
LIMIT 1,9
|