我有一个简单的查询,它使用以下命令文本将值从SQL Server返回到Excel工作表。但是,如果在Material
表中找不到Material_Location
值,则只会省略它。
如果在On_Hand_Qty
表中找不到Material
Material_Location
的值返回为“0”
SELECT
SO_Detail.Sales_Order,
SO_Detail.SO_Line,
SO_Detail.Material,
SO_Detail.Order_Qty,
Material_Location.On_Hand_Qty
FROM
SO_Detail
INNER JOIN Material_Location ON SO_Detail.Material = Material_Location.Material
ORDER BY
SO_Detail.Sales_Order,
SO_Detail.SO_Line
由于
答案 0 :(得分:2)
使用score
代替left outer join
,即使inner join
中不存在匹配记录,您仍可以从SO_Detail
获取记录。
Material_Location
将遍历传递给它的每个参数,直到找到一个非空
COALESCE