イベント、製品、関連テーブルevent_productsという3つのテーブルがあります。MySQLでは、どのようにして参加し、最初のセットのみを取得するのですか?
イベント:event_idが、
製品:PRODUCT_ID、PRODUCT_NAME
event_products:event_idのは、どれもまたはイベントに関連した多くの製品があってはいけません
をPRODUCT_ID。
私の質問は、イベントのリストと、イベントごとに結果の行が1つだけ必要です。リストでは、各イベントごとに1つのプロダクトしか必要としません。最初に追加したプロポーザルが1つだけであるか、できない場合はproduct_idが最も小さいプロダクトが必要です。
select e.event_id, ep.product_id, p.product_name
FROM `events` e
LEFT OUTER JOIN event_products ep on ep.event_id = e.event_id
LEFT OUTER JOIN products p on p.product_id = ep.product_id;
複数の製品が割り当てられているイベントごとに複数の行が返されます。
おかげ
event_idはイベントのプライマリキーで、製品の製品IDです。 event_idとproduct_idの組み合わせがevent_productsの主キーです。 – sdfor