2013-07-11 5 views
0

Oracle SQL Developer에서 다음 쿼리를 실행하려고하는데 오른쪽 괄호를 인식하지 못하고 첫 번째 행만 반환해야합니다.하위 쿼리에서 선택 및 순서 사용 방법

SELECT 'PX' 
FROM CME_NYMEX_FUTURES 
    where SYM='NG' AND CME_NYMEX_FUTURES.CONTRACT_MONTH = '6' and CME_NYMEX_FUTURES.CONTRACT_YEAR = '2013' 
     and OPR_DATE=(select opr_date FROM CME_NYMEX_FUTURES where SYM='NG' and TYP='6' and CME_NYMEX_FUTURES.CONTRACT_MONTH = '6' 
     and CME_NYMEX_FUTURES.CONTRACT_YEAR = '2013' and ROWNUM =1) and TYP='6' 
ORDER BY CONTRACT_YEAR asc, CONTRACT_MONTH asc, OPR_DATE desc 

감사 : 나는 데이터 포인트를 가져 오는되어야하고, 대신에 내가 'PX'을 받고 있어요 반환 - 나는 다음을 시도 할 때

SELECT 'PX' 
FROM CME_NYMEX_FUTURES 
    where SYM='NG' AND CME_NYMEX_FUTURES.CONTRACT_MONTH = '6' and CME_NYMEX_FUTURES.CONTRACT_YEAR = '2013' 
     and OPR_DATE=(select opr_date FROM CME_NYMEX_FUTURES where SYM='NG' and TYP='6' and CME_NYMEX_FUTURES.CONTRACT_MONTH = '6' 
     and CME_NYMEX_FUTURES.CONTRACT_YEAR = '2013' order by OPR_DATE desc) and TYP='6' 
ORDER BY CONTRACT_YEAR asc, CONTRACT_MONTH asc 

는 결과가 올바르지 않습니다.

+1

상수 ('PX')를 선택했습니다. 쿼리에 결과가 있으면 항상 반환됩니다. 결과 집합에서'CONTRACT_YEAR','CME_MYMEX_FUTURES.CONTRACT_MONTH' 등의 항목을 선택해야합니다. –

답변

0

나는 여전히 쿼리를 해독하려고하지만 실제로 어떤 데이터 열을 보유하고있는 열입니까? 결과를 바꾸기보다는 선택 기준의 일부로 'PX'를 계속 사용하기 때문에 PX가 다시 나타납니다.

데이터 포인트에 대해 CME_NYMEX_FUTURES에있는 열은 'PX'가 아닌 여기에 나열되어야합니다. 여기에 귀하의 요점을 놓치고 있다면 알려주십시오.

관련 문제