【发布时间】:2019-04-14 14:05:47
【问题描述】:
我正在使用 Northwind 数据库来学习 SQL Server。我正在尝试运行 SQL 查询,以便我可以从Employees 表中选择特定的员工(EmployeeID=1),并从Orders 表中选择与该员工相关的每个订单,它是如何运送(运送方式),运送它的公司,从订单日期到发货日期的总天数。对于我有以下查询,我不确定我的查询是否正确。有人可以验证一下吗?
我尝试在查询下运行
SELECT Employees.EmployeeID,
Orders.OrderID,DATEDIFF(DAY,Orders.OrderDate,Orders.ShippedDate) AS 'Date
Diff',
Orders.ShipVia,Shippers.ShipperID,Shippers.CompanyName FROM Employees
LEFT JOIN Orders ON Employees.EmployeeID=Orders.EmployeeID
LEFT JOIN Shippers ON Orders.ShipVia=Shippers.ShipperID
WHERE Employees.EmployeeID =1
GROUP BY
Orders.ShipVia,Shippers.ShipperID,Shippers.CompanyName,Employees.EmployeeID,Orders.OrderID,Orders.OrderDate,Orders.ShippedDate
【问题讨论】:
-
你的
GROUP BY似乎是多余的。 -
@GordonLinoff .. 另一种方法是什么?只需删除 Group BY... 我在想是否有其他方法可以解决这个问题?
-
你没有使用任何聚合函数那么你为什么要使用 group by ..没有聚合它会改变结果
-
@KedarLimaye.. 你能详细说明一下吗?
-
是否有您准备查询的特定要求?
标签: sql sql-server aggregate sql-server-2014