mysql - 如何加入 + 只选择只有 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
但不起作用:(
解决方案
你只需要修改你的 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)
推荐阅读
- javafx-11 - JavaFX 鼠标事件未在嵌套较小画布控件的部分区域中触发
- jsp - JSTL forEach 无法打印列表值
- django - 如何使用 Django 调整网站的引导卡大小?
- python - ipywidgets 并在第一次调用后不显示其输出
- java - 按索引引用另一个数组
- swift - 活动指示器未显示在视图中
- java - 字符串的 Base10 加密
- python - 无法在 Centos 7 服务器上使用 systemd 将烧瓶应用程序作为服务运行
- php - PHP foreach 循环不会运行所有迭代。我有 1500 个用户,但它只为大约 1000 个用户执行,然后返回一个空白页
- python - 在导入的图形中添加颜色条(Python)