顧客テーブルと注文テーブルがあります。各顧客は多くの注文をすることができます。
注文テーブルからすべての顧客とその最初の注文番号を選択したいと思います(注文だけでなく、最も早い注文番号を選択することが重要です)。注文の有無にかかわらず顧客をリストしたいのですが、複数の注文がある場合は2回顧客を含めたくありません。
私はこれを使用しています:
SELECT *
FROM customers
LEFT JOIN orders
ON customers.id = orders.customer_id
GROUP BY customers.id
これにより、テーブルから好きな注文IDを選択することを除いて、ほぼ私が望むものが得られます。並べ替えて、最小の注文IDを選択できるようにする必要があります。
何かアイデアはありますか?
私の顔をじっと見つめているものだと確信しています...
編集:要求に応じてテーブルの構造
顧客:
| ID | Name | Address | Etc | ---------------------------------------- | 1 | Joe | 123 Fake Street | | | 2 | Mike | 1600 Fake Road | | | 3 | Bill | Red Square, Moscow | | ----------------------------------------
注文:
| ID | Customer_ID | Date | --------------------------- | 1 | 1 | ... | | 2 | 2 | ... | | 3 | 2 | ... | | 4 | 1 | ... | ---------------------------