列出操纵两个表内容的数据

时间:2014-04-17 22:27:51

标签: sql sql-server

我有这两个表

enter image description here

我想知道如何列出产品表:产品数量,数量,名称,价格

和表productUser:userId,State

问题是我还需要列出产品表的所有信息,并添加具有相同值的UserId字段,并且状态查找默认值将为false。

有可能吗?还可以,不添加userId,State并从我的应用程序代码中驱动它来分配值。感谢

更新:

enter image description here

1 个答案:

答案 0 :(得分:0)

如果我正确理解您的问题,您希望列出两个表中的特定字段,但仅限于子记录符合您的条件时。如果是这样,下面的查询将允许您指定userID和State。

SELECT p.prodId
      ,p.Quantity
      ,p.Name
      ,p.Price
      ,pu.userId
      ,pu.State
  FROM Product p
 INNER JOIN ProductUser pu
       ON p.prodId = pu.prodId
 WHERE pu.userID = @userID
   AND pu.State = 0
   --AND pu.State = @State

如果我的理解不正确,请发布一些样本表数据并指出您想要返回的结果。

更新到您的更新:我在上面的查询中默认状态为零。后续问题:您是否想要来自两个表的列,或者您是否尝试对ProductUser进行存在检查以仅从Product返回列?