重複の可能性:
SQLクエリ最適化の推奨製品
これは、顧客の注文履歴テーブルに基づいて、「推奨」製品を取得するためのクエリです。
SELECT
A.id_product, COUNT( A.id_product ) AS num
FROM
orders A, orders B
WHERE
A.id_order = B.id_order
AND B.id_product IN (-**COMMA-SEPARETED-IDs**-)
AND A.id_product NOT IN (-**COMMA-SEPARETED-IDs**-)
GROUP BY
A.id_product
これはテーブルの定義です。
ORDERS (id_order, id_product, quantity);
例:T1(1、1、2); T2(1、2、2); T3(1、3、2); T4(2、2、2); T5(2、1、2);
id_product(たとえば2)が与えられた場合、私がやりたいのは、注文の製品の1つが指定されたものである注文に存在するすべてのid_prodoctを取得することです。与えられた例を使用して、id_product = 2が注文1と注文2に存在するため、顧客に製品1と3を提案します。これらの注文の他の製品は3と1です。したがって、製品3と製品1を提案します。
私が探しているのは、最適化された最適なクエリを実現することです。私の貧弱な英語を許してください。