0

我正在使用以下查询:

SELECT Products.SKU,
    Buy_Orders_Details_Requested_But_Not_Sent_By_Customer.Customer,
    First(Buy_Orders_Details_Requested_But_Not_Sent_By_Customer.Requested_But_Not_Sent) AS     FirstOfRequested_But_Not_Sent
FROM Products
LEFT JOIN Buy_Orders_Details_Requested_But_Not_Sent_By_Customer
    ON Products.SKU = Buy_Orders_Details_Requested_But_Not_Sent_By_Customer.SKU
GROUP BY Products.SKU,
    Buy_Orders_Details_Requested_But_Not_Sent_By_Customer.Customer;

我得到“无效的函数参数”。

当我运行时:

SELECT Products.SKU,
    Buy_Orders_Details_Requested_But_Not_Sent_By_Customer.Customer,
    First(Buy_Orders_Details_Requested_But_Not_Sent_By_Customer.Quantity_Ordered) AS     FirstOfQuantity_Ordered
FROM Products
LEFT JOIN Buy_Orders_Details_Requested_But_Not_Sent_By_Customer
    ON Products.SKU = Buy_Orders_Details_Requested_But_Not_Sent_By_Customer.SKU
GROUP BY Products.SKU,
    Buy_Orders_Details_Requested_But_Not_Sent_By_Customer.Customer;

它没有问题。两个查询之间的唯一区别是正在聚合的字段——Quantity_Ordered 或 Requested_But_Not_Sent。基础记录集“Buy_Orders_Details_Requested_But_Not_Sent_By_Customer”本身就是一个查询,而不是一个表。单独打开该查询可以正常工作,没有问题。“Requested_But_Not_Sent”不包含任何 NULL。当我将查询 Buy_Orders_Details_Requested_But_Not_Sent_By_Customer 的内容转储到临时表并加入该表而不是查询时,它工作正常。

在查询 Buy_Orders_Details_Requested_But_Not_Sent_By_Customer 中,我发现有些字段有效,有些则无效(如前所述)。为什么会出现这种情况?为什么底层记录集是表还是查询是相关的?最重要的是,如何在不使用临时表的情况下获得我想要的结果?如果需要更多信息,请指定,我会提供。

谢谢!

4

0 回答 0