我得到了代码,该代码列出了州和州的发票总数,这些州和州的发票总额基于我们ERP软件中要发送的地址。问题是有人忘记放入州,所以我们的总数与州无关。我们需要找出那些没有状态的发票,以便我们可以更新ERP软件中的状态字段。
示例
100.00 GA
200.00 EMPTY
300.00 IN
我在SQL方面的技能非常有限,正在使用我担任这个职位时给我的知识。
SELECT
SUM(Invoice_Header.Orig_Invoice_Amt) AS SumOfOrig_Invoice_Amt,
Address.State
FROM Address
INNER JOIN Invoice_Header ON Address.Address = Invoice_Header.Ship_To
WHERE Invoice_Header.Document_Date Between '1/1/2018' And '12/31/2018'
GROUP BY Address.State;
没有状态关联的发票清单,因此我们可以进入ERP软件并添加状态。
答案 0 :(得分:0)
以下查询将识别表Ship_To
中没有State
的所有发票客户(Address
):
SELECT DISTINCT i.Ship_To, a.Address
FROM Invoice_Header i
LEFT JOIN Address a ON a.Address = i.Ship_To
WHERE a.State IS NULL AND i.Document_Date Between '1/1/2018' And '12/31/2018'
可能有两个原因:
Address
中没有该客户的记录;发生这种情况时,结果中的第二列为空Address
记录,要么为空的State