首页 > 解决方案 > 需要一些方向销售日期“休息”查询

问题描述

我正在尝试找出构建查询的最佳方法,该查询将告诉我哪些商品需要“休息”才能出售。每个项目都有一个项目编号和一个两个字母的前缀。(IE:1234567 DT)如果我在 2018 年 3 月 11 日之前有商品 1234567 DT 出售,并且前缀 DU 中的商品 1234567 在 30 天的“休息”期之前邮寄出去,假设它在 4 月 4 日邮寄2018 我希望它出现在查询中。

由于结束日期和邮寄日期是按前缀而不是项目编号,我创建了一个表格,其中包含所有前缀及其销售结束日期和邮寄日期。

我现在要做的是找出构建查询的最佳方法,该查询使用日期表 (PDTT) 并查看结束日期与邮件日期,并挑选出与 30 天休息期冲突的任何内容。

我为每个前缀创建了一个查询,其中包括我创建的结束日期和邮件日期表,并从中创建了一个使用前缀查询的辅助查询,我开始测试以下内容,但我没有得到正确的结果。

SELECT 
  [1 EB Date Tests DT].Pack, 
  [1 EB Date Tests DT].[EB End Date], 
  [1 EB Date Tests DU].[Mail Date], 
  DateAdd("d",-30,[1 EB Date Tests DU]![Mail Date]) AS Conflicts
FROM ([1 EB Date Tests DT] 
INNER JOIN [1 EB Date Tests DU] ON 
  ([1 EB Date Tests DT].Owner = [1 EB Date Tests DU].Owner) AND ([1 EB Date Tests DT].Pack = [1 EB Date Tests DU].Pack)) 
INNER JOIN 1PDTT ON 
  ([1 EB Date Tests DU].Prefix = [1PDTT].Prefix) AND ([1 EB Date Tests DT].Prefix = [1PDTT].Prefix)
ORDER BY [1 EB Date Tests DT].Pack;

PDTT 表如下所示:

ID  Prefix  Mail Date   EB End Date WS End Date
2   DT  12/14/2018  3/11/2019   1/30/2019
3   DF  12/27/2018  3/11/2019   2/27/2019
4   DU  3/30/2019   3/11/2019   2/27/2019
5   DB  2/22/2019   6/17/2019   
6   DA  3/1/2019    6/17/2019   
7   DM  4/19/2019   6/17/2019   

每个前缀都有一个显示包号和前缀的查询,并连接到该表的前缀。

我什至不确定这是正确的方向。任何想法,想法或朝着正确的方向推动将不胜感激!

谢谢!

标签: databasems-accessvbams-office

解决方案


推荐阅读