如何基于单个字段查询三个表

时间:2012-12-26 14:07:38

标签: sql select database relational

我在SQL数据库中有三个表。这个关系系统是由其他人设计的,但我被要求创建一个新的查询,因为他不再为公司工作。为了保密目的,我将使用示例名称。

  1. 客户
    CUSTOMER_ID
    PRODUCT_CODE
    product_color
    product_size
    ...

  2. customer_link
    CUSTOMER_ID
    product_id

  3. customer_stats
    PRODUCT_ID
    product_actual_product
    product_actual_color
    product_actual_size
    ...

  4. 该系统旨在让用户在系统中输入信息,并为每位客户提供多种产品。在客户中,显示的字段是customer_id从(1)到(2)链接的所有代码。然后两个在(2)和(3)之间可以有多个链接,基于(2)中的多个记录,具有相同的customer_id和不同的product_id。 (3)具有链接的product_id和(1)中列出的代码的实际文本。

    底线是我需要一个基于(1)中字段的SELECT语句,但数据存储在(3)中。哇我很困惑,可以真正使用一些帮助。

1 个答案:

答案 0 :(得分:4)

这应该非常简单,

SELECT  a.*, c.*
FROM    customer a
        INNER JOIN customer_link b
            ON a.customer_ID = b.customer_ID
        INNER JOIN Customer_stats c
            ON b.product_id = c.product_id

要了解有关联接的更多信息,请参阅以下链接