2

SQL データベースに 3 つのテーブルがあります。このリレーショナル システムは別の人によって設計されましたが、彼はもう会社に勤務していないため、新しいクエリを作成するように依頼されました。機密保持のためにサンプル名を使用します。

  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
    ...

このシステムは、ユーザーがシステムに情報を入力し、顧客ごとに複数の製品を持つように設計されています。customer では、表示されるフィールドはすべて、(1) から (2) までの customer_id によってリンクされたコードです。2 つは、同じ customer_id と異なる product_id を持つ (2) の複数のレコードに基づいて、(2) と (3) の間に複数のリンクを持つことができます。(3) には、リンクされた product_id と、(1) にリストされたコードの実際のテキストがあります。

要点は、(1) のフィールドに基づくが、(3) に格納されたデータを使用する SELECT ステートメントが必要だということです。うわー、私は混乱していて、本当に助けが必要です。

4

1 に答える 1

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

結合について詳しくは、以下のリンクを参照してください。

于 2012-12-26T14:09:17.773 に答える