2013-07-17 2 views
0

요청시 작업 중입니다.이 오류가있어서 절을 찾지 못했습니다. 줄 1의 오류 : ORA-00933 : SQL 명령줄 1의 오류 : ORA-00933 : SQL 명령이 제대로 끝나지 않았습니다.

echo "update account_balances_t set credit_limit='51200' inner join account_t on account_t.poid_id0=account_balances_t.obj_id0 where access_code1 in (SELECT DISTINCT ACCESS_CODE1,REC_ID FROM ACCOUNT_T A, ACCOUNT_PRODUCTS_T AP WHERE A.STATUS != 10103 AND A.ACCESS_CODE1 IS NOT NULL AND A.POID_ID0 = AP.OBJ_ID0 AND AP.PRODUCT_OBJ_ID0 = (SELECT POID_ID0 FROM PRODUCT_T WHERE NAME = 'IEW - Europe Daily Plan 1')); "|sqlplus -s `whoami`/`whoami`@$ORACLE_SID 

오류가 :

SELECT DISTINCT ACCESS_CODE1,REC_ID FROM ACCOUNT_T A, ACCOUNT_PRODUCTS_T AP WHERE A.STATUS != 10103 AND A.ACCESS_CODE1 IS NOT NULL AND A.POID_ID0 = AP.OBJ_ID0 AND AP.PRODUCT_OBJ_ID0 = (SELECT POID_ID0 FROM PRODUCT_T WHERE NAME = 'IEW - Europe Daily Plan 1')) 
                                                                    * 
ERROR at line 1: 
ORA-00933: SQL command not properly ended 

답변

1

당신은 기본적으로이 있습니다

하지 제대로

요청을 종료

UPDATE account_balances_t 
SET credit_limit='51200' 
INNER JOIN account_t ON account_t.poid_id0=account_balances_t.obj_id0 
WHERE access_code1 IN (...); 

available syntax variations for UPDATE 사이에 비슷한 것을 찾을 수 없습니다.

또한 access_code1 열과 두 개의 열을 반환하는 하위 쿼리를 일치 시키려고합니다. 오라클은 '내부 조인'여기에 지원하지 않습니다 - 설정 credit_limit account__balances_t

0
UPDATE PEOPLE a 
SET a.SURNAME = (
    select b.SURNAME 
    from PEOPLE b 
    where b.NI.NO = a.NI_NUMBER 
) 
관련 문제