我正在运行一个查询,我得到了重复的行。我不明白这是为什么。这是我的查询:
SELECT c.FName,
p.ProductName,
s.Description,
s.Quantity,
s.Price
FROM customers c,
products p,
sellers s,
requests r
WHERE c.ID = s.CID
AND p.ProductID = s.ProductID
AND r.ProductID = s.ProductID
AND r.C_ID = 3
AND r.MatchType = 'Price'
ORDER BY s.Price ASC
=======编辑=======
好的,这里是 Requests 表中的值的编辑。注意:CID 2=DAZ(一般是卖家),3=Paul(一般是采购员)和 5=compny1(一般是卖家) 注意:产品 id 1=苹果,产品 id 2=梨,产品 3=浆果,产品 id4 =橙色
选择记录 MatchType=Price 和 cust ID=3 后,请求表如下所示:
requestid | cid | productid | Quantity | Price | matchtype
------------------------------------------------------------------
1 3 1 3.0 2.00 price
3 3 4 4.0 2.50 price
4 3 3 2.5 2.00 exact
5 3 2 3.0 3.50 exact
6 3 3 3.0 2.00 exact
7 3 1 10.0 7.00 price
这是卖家表
promotionID | cid | productid | Quantity | Price | description
------------------------------------------------------------------
1 2 4 5.0 2.99 oranges
2 2 3 1.5 1.00 hand strawberries
3 2 3 2.5 2.00 l stawberries
4 2 2 3.0 3.00 pear
5 5 1 5.0 5.00 royal apples fm appleco.
6 2 1 6.0 5.50 sweet apples
运行查询后,我尝试了建议的连接和此问题中的连接,我一直将其作为输出
FName ProductName Description Quantity Price
daz Oranges Fresh and sweet oranges. 5.0 2.99
compny1 Apple royal apples fm appleco. 5.0 5.00
compny1 Apple royal apples fm appleco. 5.0 5.00
daz Apple sweet apples 6.0 5.50
daz Apple sweet apples 6.0 5.50
我不明白为什么我会收到重复的行。请求的产品 id 必须是 = 卖家产品 id 以将请求的产品与可用的产品匹配,并且在这种情况下选择的 customerId 是 3...
我不明白为什么最后 4 条记录会自我重复?为什么会这样??
从技术上讲,应该只显示 4 条记录。即行上的记录.. 1,2 和 3
建议/观察 好的,看过这个之后......你认为这些行是重复的,因为同一客户两次以不同的数量请求了 productID1=apple 吗?
requestid | cid | productid | Quantity | Price | matchtype
------------------------------------------------------------------
1 3 1 3.0 2.00 price
7 3 1 10.0 7.00 price