我認爲如果條件爲真或假,則IIf語句會返回一個值,但在Access中的此IIf語句返回字段及其值。如何在SQL Server中轉換或重寫Access IIF語句
IIf([A1]![KPr],[A1]![Kat],IIf([Data2]![Kat],[Data2]![Kat],[Data1]![Kat])),
表左連接在FROM子句中 我試着體會到使用CASE WHEN
在SQL Server
這一說法,但它也接受一個真或假的條件。
我該如何理解和實現這種說法。
我認爲如果條件爲真或假,則IIf語句會返回一個值,但在Access中的此IIf語句返回字段及其值。如何在SQL Server中轉換或重寫Access IIF語句
IIf([A1]![KPr],[A1]![Kat],IIf([Data2]![Kat],[Data2]![Kat],[Data1]![Kat])),
表左連接在FROM子句中 我試着體會到使用CASE WHEN
在SQL Server
這一說法,但它也接受一個真或假的條件。
我該如何理解和實現這種說法。
在VB,VBA和Access中的IIf函數與ps_prakash02在評論中寫的相同:iif(condition, value_if_true, value_if_false)
。這意味着如果條件評估爲true,則返回value_if_true
,否則返回value_if_false
。
因此,IIF到t-sql的翻譯僅僅是CASE WHEN condition THEN value_if_true ELSE _value_if_false END
。
我不太知道什麼[A1]![KPr]
意味着訪問,我猜這是表A1或類似這樣的KPR列的值,所以我會離開他們,因爲他們是你的問題,只需更換IIF
與CASE
在我的答案:
CASE WHEN [A1]![KPr] THEN [A1]![Kat]
ELSE
CASE WHEN [Data2]![Kat] THEN [Data2]![Kat]
ELSE [Data1]![Kat]
END
END
IIF(條件,value_if_true,value_if_false)。在上述聲明中,他們如果第一個條件不滿足檢查一個條件。要轉換此到sql server檢查嵌套的情況下ñ –