我正在尝试计算 2 个相关表上的 2 个值之间的差异。
SELECT a.[Batch No_], b.[Lot No_], b.[Open], a.[Current Stock], b.Amount, a.[Batch Value]
FROM [sb] AS a LEFT OUTER JOIN
[ile] AS b ON a.[Batch No_] = b.[Lot No_]
WHERE (a.[Current Stock] = 1) AND (b.[Open] = 1)
我希望返回来自 sb(a) 的所有记录,其中 Current Stock = 1。我希望返回来自 ile(b) 的所有匹配记录,其中 Open = 1。
问题是,如果没有匹配的记录,我仍然希望返回 sb(a) 字段,并将 b.Amount 设置为 0。
b.Open = 0 的记录有多个,不能返回。
我该怎么做?我看到了一个涉及 COALESCE 的解决方案,但我无法让它工作
谢谢