当一个表是产品数时,如何关联表

时间:2016-12-15 22:43:18

标签: sql join database-design architecture

我有一个包含产品(ID,名称)的表和另一个包含客户的表(ID,名称,电话号码)。 我也知道每个客户购买的每种产品的数量,

即。客户端1购买30a,20b,100c和0d

客户2购买10a,10b,10c和10d

我知道如何制作产品表和客户表,但我如何关联这两个表?例如,如果我想显示客户1购买的产品的名称,我该怎么办?

欢呼声

2 个答案:

答案 0 :(得分:0)

您需要的是一种关系'链接客户和产品的表。

我认为购买信息位于一个单独的表(ClientProductRelation)中,其中包含以下列: - ClientID - ProductID - 数量(仅当您想知道客户购买多少产品时才需要)

然后,使用JOIN语句,您可以获得完整信息:

getElementsByClassName

(我知道TOP 1不是最好的选择,但它是最快的选择)

希望这有帮助!

答案 1 :(得分:0)

制作交易/订单表(id,Custid,Prodid,数量,日期时间)。 这样你就可以做到:

SELECT 
    c.name, 
    p.name,
    o.quantity, 
    o.id,
    o.datetime

FROM 
    orders o 
JOIN 
    customers c 
ON o.custid = c.id
JOIN products p
ON o.prodid = p.id

WHERE c.id = 1