获取与一个城市不同的雇员的订单数

问题描述 投票:0回答:1

SQL学习进展顺利。现在在需要帮助的地方练习。

我想获得与纽约的员工的订单数不同的员工的姓名。

表格:

[ORDERS,其中包括EMPLOYEE_ID, CITY, ORDER_ID

[EMPLOYEES,其中包括LAST_NAME, FIRST_NAME, EMPLOYEE_ID, CITY

我被困在这种情况下:

SELECT ROW_NUMBER() OVER ( ORDER BY COUNT(T.ORDER_ID) DESC) ROW,
(H.LAST_NAME + ', ' + H.FIRST_NAME) 'Employee name',
COUNT(T.ORDER_ID) 'Sold orders', H.CITY 'City'

FROM ORDERS T JOIN EMPLOYEE H ON T.EMPLOYEE_ID = H.EMPLOYEE_ID

GROUP BY H.EMPLOYEE_ID, H.LAST_NAME, H.FIRST_NAME, H.CITY

因此,我可以获得员工已出售的订单。不幸的是,它没有显示具有0个订单的员工。

如何显示0个订单的员工?我该如何显示与一个城市的员工相比拥有不同订单数的员工?与纽约的员工拥有不同订单的示例员工。

希望您能理解我的意思。问题复杂,语言障碍少。

sql
1个回答
0
投票

我认为您只想要一个left join

select 
    row_number() over ( order by count(o.order_id) desc) rn,
    e.last_name + ', ' + e.first_name employee_name,
    count(o.order_id) sold_orders, 
    e.city
from employee e
left join orders o on o.employee_id = e.employee_id
group by e.employee_id, e.last_name, e.first_name, e.city
© www.soinside.com 2019 - 2024. All rights reserved.