我有两张桌子:
优惠
ShippedItem Returned
----------- --------
A NULL
B NULL
C NULL
D Yes
E Yes
返回
ReturnItem Reason
---------- --------------------
D Not Good
E Defect
我需要根据返回原因编写一个查询,该查询将提供Shipping qty并返回Qty(返回qty ie..where返回值不为null)。
答案 0 :(得分:0)
我还不能发表评论,但这里有一些关于你问题的说明。
由于您的表格没有这些字段,因此您无法退回运费数量或返回数量。这可能只是你的疏忽,那些表确实有这些领域。
你说你想要一个正确的表过滤器,但你没有提到过滤器是什么。
你提到左外连接,所以大概你知道如何写一个。
如果我不得不猜测你的问题是什么,我会说你要在Return表上过滤一些东西,但仍然从Shipping表中获取不在Return表中的所有行。
如果是这样,你所做的就是将右表过滤器从WHERE子句移动到JOIN子句中。
SELECT *
FROM Shipping
LEFT JOIN Returns
ON ShippedItem = ReturnItem
AND Returns.otherField = Filter here