2017-07-03 150 views
0

我是新來的SQL,並試圖以獲得在SQL要使用的值,如果一個語句等同。收到此錯誤 - ORA-00936:缺少表達

運行這個報告,我得到的錯誤「ORA-00936:缺少表達式」後

CASE WHEN (select Sum(MONTANT) from fraisExterne where matching=fm.id and statut=3) IS NULL 
    THEN select sum(MONTANT) from fraisExterne where matching=fm.id 
    ELSE Select sum (MONTANTHTBROKER) from fraismatching where matching=fm.id 
End End as "BROKER AMOUNT" 

請讓我們知道如果你能幫助我嗎

回答

0

你有一個額外的END關鍵詞在你的病例陳述結束時。您還需要將選擇查詢放入()中。

試試這個:

SELECT 
CASE 
    WHEN (select Sum(MONTANT) from fraisExterne where matching=fm.id and statut=3) IS NULL THEN (select sum(MONTANT) from fraisExterne where matching=fm.id) 
    ELSE (Select sum (MONTANTHTBROKER) from fraismatching where matching=fm.id) 
End AS BROKER_AMOUNT 

我希望這有助於和歡迎StackOverflow上。如果您發現此答案或任何其他答案可解決您的問題,請將其標記爲解決方案。這將有助於將來遇到同樣問題的社區和其他程序員。謝謝。