我正在尝试学习SQL(通过公司指南)。 我在一张表中有一张发票清单,以及与之相关的税码。 所有发票都有一个税码,数字1000001除外,税码有两个(因此dbo.InvoiceTaxBreakDown中有两个记录。
该练习希望我创建变量TaxCode1和TaxCode2。除一条记录外,所有其他记录在TaxCode2中均应为“ NULL”。
这是我的代码:
SELECT
InvoiceNo,
TaxCode1 =
(
SELECT
TOP 1 T.TaxCode
FROM
dbo.InvoiceTaxBreakDown as T
WHERE
I.InvoiceGUID = T.InvoiceGUID
ORDER BY
T.TaxCode DESC
)
,
TaxCode2 =
(
SELECT
TOP 1 T.TaxCode
FROM
dbo.InvoiceTaxBreakDown as T
WHERE
I.InvoiceGUID = T.InvoiceGUID
ORDER BY
T.TaxCode ASC
)
FROM
dbo.InvoiceTaxBreakDown as I
I'm not sure if I even need to reference two data sources..
Only the first record is correct! Please help.
[Output][1]