データベースに次のテーブルがあります。
製品
ID_PRODUCT
PRODUCTNAME
PRICE
お客様
ID_CUSTOMER
NAME
注文
ID_ORDER
CUSTOMER_ID
PRODUCT_ID
QUANTITY
4 つ以上の製品を注文したすべての顧客を選択するにはどうすればよいですか?
データベースに次のテーブルがあります。
製品
ID_PRODUCT
PRODUCTNAME
PRICE
お客様
ID_CUSTOMER
NAME
注文
ID_ORDER
CUSTOMER_ID
PRODUCT_ID
QUANTITY
4 つ以上の製品を注文したすべての顧客を選択するにはどうすればよいですか?
「4 つ以上の異なる製品を注文したすべての顧客 ID を選択する方法は?」という意味であると仮定すると、次のように使用できます。
select customer_id
from orders
group by customer_id
having count(distinct product_id) >= 4
注文で 4 つ以上の製品ラインが必要な場合は、「数」から「個別」を削除します。
さらに顧客情報が必要な場合は、これを顧客テーブルに結合して名前を取得できます (など)。
select *
from Customers as c
where (select count(*) from Orders as o where o.CUSTOMER_ID = c.CUSTOMER_ID) > 3