针对SELECT
和Sales.Orders
表写一个Sales.OrderDetails
语句
并检索 productid 列的所有不同值。
过滤结果以仅包括在 一年的前10周 2007年下的订单。
我在过滤部分遇到了麻烦。
我尝试过的:
select * from Sales.Orders o
join Sales.OrderDetails d
on o.orderid=d.orderid
group by o.productid
having orderdate between '2017-01-01' and '2017-03-12';
答案 0 :(得分:0)
尝试一下:
DATEADD 函数将为您提供10 week(70 days)
的值。
select *
from Sales.Orders o
join Sales.OrderDetails d on o.orderid=d.orderid
WHERE orderdate >= '2017-01-01' and orderdate <= DATEADD(DAY,70,'2017-01-01')
答案 1 :(得分:0)
您想要一个where
子句来过滤日期。然后,您只想选择产品ID:
select distint od.productid
from Sales.Orders o join
Sales.OrderDetails od
on o.orderid = d.orderid
where o.orderdate >= '2017-01-01' and
o.orderdate < dateadd(week, 11, '2017-01-01');