2016-10-26 2 views

ответ

0

Это не синтаксис Oracle. Другой способ:

UPDATE RECAPT.COST_MODEL_DETAIL a 
    SET CRV_AMOUNT = (SELECT (b.BASELINE_TOTAL_VALUE * a.CRV_PERCENT)/100 
         FROM RECAPT.COST_MODEL b 
         WHERE a.COST_MODEL_ID = b.COST_MODEL_ID 
        ) 
    WHERE EXISTS (SELECT 1 
        FROM RECAPT.COST_MODEL b 
        WHERE a.COST_MODEL_ID = b.COST_MODEL_ID 
       ); 
+0

я получаю от ключевого слова не найден там, где ожидалось» –

+0

Удалить последнюю скобку из второй линии, после 100. Я буду редактировать исправить. – mathguy

+0

НОМЕР (26,20) определяется на сумму, но я получаю значение ошибки больше, чем указанная точность, разрешенная для этого столбца –

0

При обновлении данных в таблице на основе данных в другой таблице, рассмотрит merge заявления вместо update. merge является более гибким, его можно использовать для обновления, вставки и удаления всего в одном заявлении, а в некоторых случаях он может быть более эффективным, чем update или insert.

merge into recapt.cost_model_detail a 
    using recapt.cost_model b 
    on (a.cost_model_id = b.cost_model_id) 
when matched then update 
    set a.crv_amount = b.baseline_total_value * a.crv_percent/100 
; 
+0

NUMBER (26,20) определяется для суммы, но я получаю значение ошибки, превышающее указанную точность, разрешенную для этого столбца. –

+0

@SujanTalurSuresh. Что может быть связано с вопросом, который вы задали, или с два решения, которые были предложены до сих пор? Если у вас нет никакой информации о точности и масштабах, а также о типе NUMBER и о том, как он работает, и вы получаете новое сообщение об ошибке (теперь, когда обновление работает), ** задайте новый вопрос ** в новом потоке! – mathguy

+0

Я новый пользователь, я cannnot задать вопрос на другой день. а также CRV_PERCENT имеет NUMBER (26,20) и CRV_AMOUNT определено NUMBER (26,20) также определено значение baseline_total_value NUMBER (26,20). Мой вопрос. Какую длину мне нужно использовать для CRV_AMOUNT, чтобы преодолеть значение, большее, чем указанная точность разрешена для этой ошибки столбца –

Смежные вопросы