【发布时间】:2016-02-20 23:10:20
【问题描述】:
我在让我的命令工作时遇到问题,似乎无论我做什么,我都会在 SELECT customer_no 语句上继续收到 Oracle 错误。
它始终是 Not a Group By 错误或 Not a single-group group function 错误。
我们的目标是创建一个查询,以查找所有订购了聚苯乙烯泡沫塑料并具有定义尺寸的客户。对于这些客户,我还想找到他们的第一个和最后一个发泡胶订单。
SELECT DISTINCT customer_no, MIN(date), MAX(date)
FROM (SELECT customer_no, details, city, size, order_item, state, date
FROM (((customer JOIN region USING (location)) JOIN order USING (order_no))
JOIN rep USING (emp_no))
WHERE order_item = 'Styrofoam' AND size IS NOT NULL
GROUP BY details, size, date, city, order_item, state);
【问题讨论】:
-
为什么子查询中的所有额外字段?你甚至不应该需要一个。此外,customer_no 不在 group by 中,看起来应该是。尝试:SELECT customer_no, MIN(date), MAX(date) FROM [..] WHERE [..] GROUP BY customer_no
标签: sql oracle oracle11g group-by subquery