簡體   English   中英

MS-Access iif語句轉換為T-SQL

[英]MS-Access iif statement convert to T-SQL

嘗試轉換訪問iif語句

IIf(FD.[Sales_Value] = 0, 'Component',
    (IIf(FD.[Lines] = 0,    
        IIf(FD.[Sales_Value] = FD.[Gross_Contribution],
            'Composite', 'N'),
        'N')
    )
) AS Composite,

我現在有這個,但是不喜歡

CASE WHEN FD.[Sales_Value] = 0 THEN 'Component'
ELSE CASE WHEN FD.[Lines] = 0 THEN
        CASE WHEN FD.[Sales_Value] = FD.[Gross_Contribution] THEN 'Composite' ELSE 'N' --END
        ELSE
            'N'
        END 
END
    AS Composite

這應該可以工作,可讀性更好:

CASE 
    WHEN FD.[Sales_Value] = 0 THEN 'Component'
    WHEN FD.[Lines] = 0 AND FD.[Sales_Value] = FD.[Gross_Contribution] 
       THEN 'Composite' 
    ELSE 'N'
END
    AS Composite

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM