2014-06-06 35 views
0
IF((SELECT COUNT(*) FROM IPA_PRCADJ_HDR WHERE TRM_CODE = 41) = 0) 
THEN 
    select '111111' from dual; 
ELSE 
SELECT '0000000' FROM DUAL; 
END IF; 

示值誤差空..檢查表是Oracle

錯誤的命令開始行73:

END IF 
ERROR REPORT: 
Unknown Command 

回答

3

您不能建立這樣的條件。嘗試建立他們的select語句中是這樣的:

select case 
     when exists 
      (select 1 
       from IPA_PRCADJ_HDR 
       where TRM_CODE = 41 
      ) 
     then '111111' 
     else '0000000' 
     end 
from dual 
-1

你可以試試這個:

IF NOT EXISTS (SELECT 1 FROM IPA_PRCADJ_HDR) 
SELECT '111111' FROM DUAL; 
ELSE 
SELECT '0000000' FROM DUAL; 
+0

不起作用:'ORA-900:無效的SQL語句' –

+0

-1因爲那裏沒有SQL條件。 – Arijit

-2

試試這個

IF((SELECT COUNT(*) FROM IPA_PRCADJ_HDR WHERE TRM_CODE = 41) == 0) 
THEN 
    select '111111' from dual; 
ELSE 
SELECT '0000000' FROM DUAL; 
END IF; 

在if條件,你必須使用 「==」 INSTEAD OF「=」。

+0

-1因爲沒有條件在SQL中。更改答案或將其刪除。 – Arijit