如何解决MS Access SQL 从分组数据中提取最新日期的数据集
我有以下 3 个表:第一个是客户的实际购买,第二个是客户对产品的报价 第三个显示客户对产品的任何兴趣(销售或报价)。
客户可能只是购买了产品,或者获得了报价但从不购买,或者获得了报价然后购买了产品。
我需要提取一个数据集,该数据集显示产品向客户出售或报价的最近日期。 所以,按 ProductCode 排序,我想要一个看起来像这样的数据集......
我可以在 sqlServer 中执行此操作,但在 MSAccess sql 中无法获得我想要的内容。 任何有关 MSAccess sql 的帮助将不胜感激。詹姆斯
解决方法
首先构建订单和报价的 UNION 查询:
SELECT [Date],CustomerID,ProductCode,"Order" AS Cat FROM SalesOrders
UNION SELECT [Date],"Quote" FROM Quotes;
在另一个查询中使用该查询为每个产品返回 TOP 1 记录:
SELECT * FROM OrdersQuotesUNION
WHERE [CustomerID] & [Cat] & [Date] In (
SELECT TOP 1 CustomerID & Cat & [Date] FROM OrdersQuotesUNION AS Dup
WHERE Dup.ProductCode = OrdersQuotesUNION.ProductCode ORDER BY Date DESC)
ORDER BY OrdersQuotesUNION.ProductCode;
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。