2017-10-10 100 views
0

我剛開始使用Crystal Reports,我試圖將字段的值設置爲value1,或者如果value爲null,則爲null。我試圖在SQL表達式編輯器的文本部分進入這個:水晶報表在SQL表達式字段中使用IF

If IsNull({TABLE.Value1}) Then 
{NewField} = (select Value2 
    from TABLE where ID = {TABLE.ID}) 
Else 
{NewField} = (select Value1 
    from TABLE where ID = {TABLE.ID}) 

但我得到一個錯誤,指出:

ORA-00923:FROM關鍵字未找到預期

我怎樣才能讓這個工作?

+0

我不熟悉使用Crystal Reports,但是這應該是有效的Oracle SQL加上CR字段引用了一些花括號的語法?如果是這樣,那麼Oracle中就沒有'IsNull',我不確定'If ... Else'語法是你想要的。 –

+0

Crystal中的SQL表達式需要有效的SQL語句 – maSTAShuFu

+0

您可以告訴我這些table.Value1和table.Value2是否可用於與該報表綁定的數據集中? –

回答

0

我最終得到了它的工作:

If IsNull({TABLE.Value1}) or {TABLE.Value1} = "" then 
    {TABLE.Value2} 
else 
    {TABLE.Value1}