,所以我正在努力尝试制作表。我已经设置了所有代码,但是当我尝试查看数据库时,它会给我一个错误。
Syntax error (missing operatior) in query expression 's.SupplierID = p.SupplierID LEFT JOIN OrderDetails AS od
on p.ProductID = od.ProductID LEFT JOIN Orders AS o
on od.OrderID = o.OrderID LEFT JOIN Customers AS c
on o.CustomerID = c.CustomerI'
但是,这是完整的代码:
Select p.ProductName AS 'Out of Stock Product', o.OrderID, c.CompanyName, c.ContactName, c.Address + ' ' + c.City +', ' + IsNull(c.StateOrRegion+ ', ', '')+ c.Country+', ' + c.PostalCode AS 'ADDRESS'
From Suppliers AS s LEFT JOIN Products AS p
on s.SupplierID = p.SupplierID LEFT JOIN OrderDetails AS od
on p.ProductID = od.ProductID LEFT JOIN Orders AS o
on od.OrderID = o.OrderID LEFT JOIN Customers AS c
on o.CustomerID = c.CustomerID
Where Discontinued = 1
Order By p.ProductName
(由于某种原因,它在上一个客户ID中切断了" D")
关于我出错的地方有任何想法吗?
编辑:所以我发现我应该在加入中添加括号,但是现在它给了我另一个问题。
更新的代码:
Select p.ProductName AS 'Out of Stock Product', o.OrderID, c.CompanyName, c.ContactName, c.Address + ' ' + c.City +', ' + IsNull(c.StateOrRegion+ ', ', '')+ c.Country+', ' + c.PostalCode AS 'ADDRESS'
From (Suppliers AS s LEFT JOIN Products AS p
on s.SupplierID = p.SupplierID) LEFT JOIN
(OrderDetails AS od ON p.ProductID = od.ProductID) LEFT JOIN (Orders AS o
on od.OrderID = o.OrderID) LEFT JOIN (Customers AS c
on o.CustomerID = c.CustomerID)
Where Discontinued = 1
Order By p.ProductName
错误是:"加入操作中的语法错误",所有帽子都突出显示了'on',以便您的查看便利性。
,这是最终代码:
Select p.ProductName AS 'Out of Stock Product', o.OrderID, c.CompanyName, c.ContactName, c.Address, c.City , c.StateOrRegion, c.Country, c.PostalCode
From
(((
(Suppliers AS s LEFT JOIN Products AS p
on s.SupplierID = p.SupplierID) LEFT JOIN
OrderDetails AS od
on p.ProductID = od.ProductID) LEFT JOIN Orders AS o
on od.OrderID = o.OrderID) LEFT JOIN Customers AS c
on o.CustomerID = c.CustomerID)
Where Discontinued = 1
Order By p.ProductName
我不得不添加括号"拉动"其他加入项目。在访问中,我无法将多列链接为一件事。der de dur