【发布时间】:2013-11-18 06:42:35
【问题描述】:
我已经检查过这段代码好几次了,但我不知道为什么会这样
关键字“SR”附近的语法不正确
这是我的 SELECT 查询:
SELECT OrderDetails.OrderID,OrderDetails.ProductCode,OrderDetails.Vendor_Price,OrderDetails.Quantity
FROM OrderDetails
JOIN
(SELECT OrderDetails.OrderID,
CASE Orders.SalesRep_CustomerID WHEN 1 THEN 'S' WHEN 2 THEN 'K' WHEN 3 THEN 'M' ELSE '' END
FROM Orders
GROUP BY OrderDetails.OrderID)
AS 'SR'
WHERE OrderDetails.ShipDate IS NOT NULL
AND OrderDetails.ShipDate >= DATEADD(Day, Datediff(Day,0, GetDate() -6), 0)
ORDER BY OrderDetails.ProductCode ASC
这很简单,我只是没有看到计算机所指的语法错误。 谢谢。
【问题讨论】:
-
去掉
'SR'周围的引号 -
@RUJordan 我现在在“WHERE”附近的语法不正确
-
取消引用表别名 - 应该是 SR,而不是“SR”。在其后添加缺少的“ON”子句;它是
JOIN <table> ON <columnA> = <columnB>,而您缺少ON和要加入的列。
标签: sql sql-server sql-server-2005 select