【发布时间】:2015-05-02 06:12:27
【问题描述】:
我有 4 张桌子:
- 客户:cno(主键)、cname、街道、邮编、电话
- 订单:ono(主键)、cno(外键)、wno(外键)、收货、发货
- 详细信息:ono(外键)、pno(外键)、数量、费用
- parts:pno(主键)、pname、qoh、price、olevel
我正在尝试查找订购两个以上不同零件的客户订购的零件的名称。 This 线程的相关性最接近,对我有很大帮助,但我在运行修改后的查询时遇到了问题,该查询如下并返回 null:
SELECT p.pname
FROM parts p
INNER JOIN odetails d ON p.pno=d.pno
INNER JOIN orders o ON d.ono=o.ono
INNER JOIN customers c ON o.cno=c.cno
GROUP BY p.pname, c.cname
HAVING COUNT(DISTINCT p.pno)>2;
任何帮助将不胜感激。
【问题讨论】:
-
在继续尝试使查询正常工作之前,您确实应该决定您的数据库。 Oracle、SQL Server 和 MySQL 是三种不同的数据库引擎。请适当地标记问题。
-
显示你的测试数据集。
-
这个命名策略太气人了。我要传递这个。
标签: mysql sql sql-server oracle