Указанное поле (цена) может относиться к более чем одной таблице

указанное поле (цена) может относиться к нескольким таблицам, указанным в пунктах from вашего состояния SQL. на основе ниже,

SELECT Customers.FirstName, Customers.LastName, Orders.OrderDate, Products.ProductName, Products.Price, Products.BatchSize, [Price]*[BatchSize] AS [Full Price]
FROM Products INNER JOIN ((Customers INNER JOIN Orders ON Customers.CustomerID = Orders.CustomerID) INNER JOIN OrderDetails ON Orders.OrderID = OrderDetails.OrderID)  ON Products.ProductID = OrderDetails.ProductID;
1
0
839
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Укажите имя используемой таблицы:

OrderDetails.[Price]*[BatchSize]

или:

Products.[Price]*[BatchSize]
Ответ принят как подходящий

Да все верно. То же и с полем BatchSize.

Вы не указали имя таблицы при использовании полей в формуле для Full Price, и если заголовок вашего сообщения по какой-либо причине должен соответствовать сообщению об ошибке, которое заставило вас опубликовать свое сообщение, скорее всего, также есть поле с именем Price в вашей таблице OrderDetails, поэтому Access не знает, какое из двух полей использовать при вычислении значений (поскольку вы обращаетесь к обеим таблицам в своем запросе). Предположительно, вы хотели сделать следующее:

SELECT Customers.FirstName, Customers.LastName, Orders.OrderDate, Products.ProductName,
  Products.Price, Products.BatchSize, Products.[Price]*Products.[BatchSize] AS [Full Price]
FROM Products INNER JOIN 
  ((Customers INNER JOIN Orders ON Customers.CustomerID = Orders.CustomerID) INNER JOIN 
    OrderDetails ON Orders.OrderID = OrderDetails.OrderID)
  ON Products.ProductID = OrderDetails.ProductID;

Но: Если ваша таблица OrderDetails также содержит Price, пожалуйста, не просто скажите Access использовать поле из таблицы Products, но прежде чем спросить себя (или кого-то, кто знает структуру базы данных), какую таблицу указать (также для 5-го поля в вашем запросе ). Возможно, для Price в таблице Products указана цена покупка, а цена, которую должен заплатить покупатель, хранится в таблице OrderDetails (аналогично образцу базы данных Northwind).

Другие вопросы по теме