簡體   English   中英

在案例陳述中使用別名

[英]Using Alias in Case Statement

我想將案件別名為Brutobedrag,但我無法完成。

SELECT     
    Invoices.InvoiceNr AS Factuurnummer, 
    case(Invoices.IsDebit)
        when 0 then -1*(Invoices.NetAmount + Invoices.BTW + COALESCE (Invoices.BPM, 0)) 
        else Invoices.NetAmount + Invoices.BTW + COALESCE (Invoices.BPM, 0)
    end 
from
    Brands INNER JOIN
    Invoices ON Brands.Id = Invoices.Brand INNER JOIN
    SalesPersons ON Invoices.SalesPerson = SalesPersons.Id LEFT OUTER JOIN
    Payments ON Invoices.Id = Payments.InvoiceId

where
    Invoices.InvoiceDate > '2011-12-31'

group by
    Invoices.InvoiceNr,
    Invoices.NetAmount,
    invoices.BTW,
    invoices.BPM,
    Invoices.IsDebit
case when Invoices.IsDebit = 0 
     then -1*(Invoices.NetAmount + Invoices.BTW + COALESCE (Invoices.BPM, 0)) 
     else Invoices.NetAmount + Invoices.BTW + COALESCE (Invoices.BPM, 0)
end as Brutobedrag 

當它的“ BC”

選擇(案例'BC'當'BC'THEN 1當'AC'THEN 4當'CL'THEN 3 ELSE''END)UNION(選擇(案例'BC'當'BC'THEN 2 ELSE''END))UNION (選擇(當'BC'THEN 22 ELSE''END時為'BC'例))UNION(選擇(當'BC'THEN 24 ELSE''END'時為例'BC')) 'THEN 5 ELSE''END))

ANS:1 2 5 22 24

在單個情況下將充分利用它來獲取多個值

暫無
暫無

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

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