【发布时间】:2015-06-02 09:52:35
【问题描述】:
为SQL Server 2008 R2使用管理工作室。
尝试执行LEFT JOIN 并且我需要返回第一个表中的所有行,而不管该行是否能够与第二个表绑定。
不知道我解释的对不对。
这是我现在得到的:
select a.id, a.name, b.store, b.stock
from products a left join stock b
on a.id = b.id
where b.store = '001'
order by a.id
我需要查询来返回公司销售的所有产品,并显示它在商店中的库存001。
但现在它只会显示提及商店中产品库存的行001。
因此,基本上,如果未提及 001 商店,我需要查询返回 0 库存。
所有在商店002 有库存的产品也需要列出,0 是库存。
【问题讨论】:
-
了解左连接返回的内容:行上的内连接以及由空值扩展的不匹配左表行。作为左连接的一部分,始终知道您想要什么内连接。在左连接删除任何由空值扩展的行之后,内连接或需要右表列不为空的地方,即仅在行上留下内连接,即“将外连接变为内连接”。你有那个。
-
这是一个常见问题解答。在考虑发布之前,请始终使用谷歌搜索您的错误消息或您的问题/问题/目标的许多清晰、简洁和准确的措辞,有或没有您的特定字符串/名称,并阅读许多答案。如果您发布问题,请使用一个短语作为标题。 How to Ask