【发布时间】:2015-03-15 01:18:08
【问题描述】:
我在显示员工编号、名字、姓氏和每个员工的订单数量的查询时遇到问题。确保订单数列名称应为“OrderCount”。按 OrderCount 排序,然后按员工 ID 排序。允许为空。
employee_data 包含的列:Emp_ID、F_Name、L_Name
order_data 包含的列:O_ID,Emp_ID,OrderNumber
这是我的查询:
Select order_data.Emp_ID, F_Name, L_Name, COUNT(employee_data.Emp_ID) as OrderCount
FROM order_data
LEFT JOIN employee_data
ON employee_data.Emp_ID = order_data.Emp_ID
GROUP BY order_data.Emp_ID
ORDER BY OrderCount
这些是我的桌子:
员工数据
订单数据
输出应该是:
但它给了我这个错误的输入。
【问题讨论】:
-
您遇到了什么问题(SQL 错误/错误结果)?
-
首先:我假设没有指定客户的订单是不存在的。如果我是对的,那么您不需要使用 LEFT JOIN。只需使用 JOIN,因为 LEFT JOIN 明确允许employee_data 为空
-
我得到了错误的结果。 @AbdulManaf
-
正确加入,但我还是错了@ITroubs
标签: mysql sql select group-by left-join