消息 512,第 16 层,状态 1,第 78 行

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

我在以下代码中遇到上述错误:

从 [Sales] 中选择 CustomerName、OrderDate。Customers 在 Sales.Orders.CustomerID=Sales.Customers.CustomerID 上加入 Sales.Orders 其中 OrderDate=(从 Sales.Orders 选择 OrderDate,其中 Month(OrderDate)= 01 且 DATEPART(DAY, OrderDate) = 10)

我该如何解决这个问题? 我需要订单日期是 1 月 10 日起的客户姓名,请帮忙

sql subquery
2个回答
0
投票

我认为你不需要子查询。您可以直接在 where 子句中直接使用月份和日期过滤器。

select CustomerName, OrderDate 
from [Sales].Customers 
join Sales.Orders 
on Sales.Orders.CustomerID=Sales.Customers.CustomerID 
where Month(OrderDate)= 01 and DATEPART(DAY, OrderDate) = 10)

0
投票

这不是一样吗:

SELECT Sales.Customers.CustomerName, Sales.Customers.OrderDate
FROM Sales.Customers JOIN Sales.Orders ON 
     Sales.Orders.CustomerID=Sales.Customers.CustomerID 
WHERE Month(Sales.Orders.OrderDate)= 01
  AND DATEPART(DAY, Sales.Orders.OrderDate) = 10);
© www.soinside.com 2019 - 2024. All rights reserved.