SQL join中的多个条件,购物车示例

时间:2018-04-19 16:56:32

标签: sql left-join

Cart Example

我有两张与购物车相关的桌子。第一个是产品表,然后是购物车表。注意我只包括相关的列。我想从产品表中提取尚未添加到购物车中的记录。当只有1个memberid时,我可以做到这一点,但是当你获得更多成员时,产品会重叠,因此不会起作用。我需要约束我的左外连接以包含成员ID。这是我到目前为止,这是有效的。问题是,我如何限制它不向我展示产品表中已经添加到" my"购物车,这意味着排除memberid = 5

的位置
SELECT top 50
product.productid
      FROM [shopping].[dbo].[product] with (NOLOCK)
LEFT OUTER JOIN cart with (NOLOCK) on product.productid = cart.productid
      where 1=1
      and cart.productid is null

我的结果应该仅记录1 - 5。

我正在澄清我想要的每个Universus'评论。我希望查询显示产品表中尚未添加到购物车的记录。所以我希望结果排除已经在我的memberid的购物车中的记录。这不适用于实际的购物车应用程序,但我认为最好用这种方式解释。我希望这澄清了这个问题。

1 个答案:

答案 0 :(得分:0)

这个怎么样:

Jean 19-APR-2018 30

含义" 显示当前会员未选择的所有产品"。这假设您在事务完成后清理Cart表。