首页 > 解决方案 > 如何加入 + 只选择只有 1 个订单的客户?

问题描述

顾客
姓名
ID
订单
客户识别码
项目

订单表中的新客户订单具有新的数据记录,例如:

CID 134 - CAR
CID 135 - PHONE
CID 134 - TEA

我只需要选择在订单表中有 1 条记录的客户,在其 CID 135 上方的 dat 中

IDN=CID

我需要选择只有一条 ITEMS 记录的 IDN,我尝试过:

SELECT customers.name, orders.items
FROM customers JOIN orders
WHERE Items > 2

但不起作用:(

标签: mysqlsql

解决方案


你只需要修改你的 where 子句。此查询将仅返回在订单表中恰好有一行的客户。

SELECT customers.name,
  orders.items 
FROM customers 
LEFT JOIN orders 
on customers.ID = orders.CID
WHERE customers.ID IN (SELECT CID from orders GROUP BY CID HAVING COUNT(*) = 1)

推荐阅读