[英]Error in If else if condition - missing keyword in SQL | Oracle |
我有點卡住需要寫 SQL 如果其他邏輯如下
作為SQL的基礎知識
下面的邏輯需要導出到SQL查詢
if depcost <> empcost and empcourseid in ('A','B') and empcd='LTR'
then
empnfees=(empvar / empdar) * empcost
else if depcost <> empcost and empcourseid <> 'A'
then
empnfees=empcost
else
if empcd='XYZ'
empnfees=empcost
else
empnfees=depcost
邏輯:
CASE WHEN depcost <> empcost AND empcourseid IN ('A', 'B') and empcd ='LTR'
THEN (empvar / empdar) * empcost
WHEN depcost <> empcost AND empcourseid <> 'A'
THEN empcost
ELSE
CASE
when empcd='XYZ'
then empcost
else
depcost
END as EMPVAR
上面的代碼向我拋出錯誤:缺少關鍵字如何解決?
您使用兩種情況,但只有一種情況。 你需要另一端:
CASE WHEN depcost <> empcost AND empcourseid IN ('A', 'B') and empcd ='LTR'
THEN (empvar / empdar) * empcost
WHEN depcost <> empcost AND empcourseid <> 'A'
THEN empcost
ELSE
CASE
when empcd='XYZ'
then empcost
ELSE
depcost
END --------------- missing end
END as EMPVAR
希望我幫助了你
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.