Я пытаюсь получить этот SQL-запрос, чтобы получить еще одну вещь из другой таблицы.Однако, когда я пытаюсь добавить его в выборку, он выдает мне ошибку - «Столбец OrderItem.orderItemValue» недопустим в списке выбора, поскольку он не содержится ни в статистической функции, ни в предложении GROUP BY. "
Вот оригинальный SQL-запрос (в хранимой процедуре), который отлично работает:
SET ANSI_NULLS ON
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE SP_InvoiceReports_CustProducts
@custIdent varchar(50) ,
@startDate datetime ,
@endDate datetime
AS
set @endDate = dateAdd(month, 1, @startDate)
SELECT product.styleDesc, product.styleRef , empCust.custName , productSize.sizeChartNme ,
Sum(orderItemAudit.shipQuantity) as theShipment ,
Sum(orderItemAudit.shipValue) as theCost
FROM orderItemAudit INNER JOIN
orders ON
orderItemAudit.orderIdent = orders.orderIdent INNER JOIN
OrderItem ON
orderItemAudit.orderItemIdent = OrderItem.orderItemIdent AND
orders.orderIdent = OrderItem.orderIdent INNER JOIN
empCust ON
orders.custIdent = empCust.custIdent INNER JOIN
product ON OrderItem.styleRef = product.styleRef INNER JOIN
productSize ON OrderItem.sizeChartIdent = productSize.sizeChartIdent
WHERE empCust.custIdent = @custIdent
and orderItemAudit.dateShipped >= @startDate
and orderItemAudit.dateShipped <= @endDate
GROUP BY product.styleRef, product.styleDesc, empCust.custName, productSize.sizeChartNme
ORDER BY product.styleRef, product.styleDesc, empCust.custName, productSize.sizeChartNme
Вот после того, как я добавил к нему то, что хочу выбрать:
SET ANSI_NULLS ON
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE SP_InvoiceReports_CustProducts
@custIdent varchar(50) ,
@startDate datetime ,
@endDate datetime
AS
set @endDate = dateAdd(month, 1, @startDate)
SELECT product.styleDesc, product.styleRef , empCust.custName , productSize.sizeChartNme , OrderItem.orderItemValue ,
Sum(orderItemAudit.shipQuantity) as theShipment ,
Sum(orderItemAudit.shipValue) as theCost
FROM orderItemAudit INNER JOIN
orders ON
orderItemAudit.orderIdent = orders.orderIdent INNER JOIN
OrderItem ON
orderItemAudit.orderItemIdent = OrderItem.orderItemIdent AND
orders.orderIdent = OrderItem.orderIdent INNER JOIN
empCust ON
orders.custIdent = empCust.custIdent INNER JOIN
product ON OrderItem.styleRef = product.styleRef INNER JOIN
productSize ON OrderItem.sizeChartIdent = productSize.sizeChartIdent
WHERE empCust.custIdent = @custIdent
and orderItemAudit.dateShipped >= @startDate
and orderItemAudit.dateShipped <= @endDate
GROUP BY product.styleRef, product.styleDesc, empCust.custName, productSize.sizeChartNme
ORDER BY product.styleRef, product.styleDesc, empCust.custName, productSize.sizeChartNme
Я не понимаю этого, потому что эта таблица находится во ВНУТРЕННЕМ СОЕДИНЕНИИ?
Любая помощь будет принята с благодарностью.