我需要一些帮助与sql查询访问,因为我是一个新手。
我有一张table tbl_FC_Data
数据行中包含一个由公司的预测日期quantity by part number by future month标记的预测。因此,一个公司的单个预测将包含每个零件号的未来每个月的一行。以下是示例数据:
Part_Number Company_Code Qty Data_Month Date_of_FC
9D0094-2 EAIL1 5 08/01/20 06/01/20
9D0094-2 EAIL1 7 09/01/20 06/01/20
9D0094-2 EAIL1 8 10/01/20 06/01/20
9D0166-24 EAIL1 2 08/01/20 06/01/20
9D0197-1 EAIL1 2 08/01/20 06/01/20
9D0094-2 EAIL1 6 08/01/20 07/01/20
9D0094-5 EAIL1 8 08/01/20 07/01/20
9D0166-10 EAIL1 9 08/01/20 07/01/20
9D0166-24 EAIL1 2 08/01/20 07/01/20
9D0094-2 EAIL1 3 08/01/20 07/01/20
9D0094-4 EAIL1 4 08/01/20 07/01/20
我的目标是比较公司的两个预测,以确定零件号是包含在两个预测中,还是仅包含在第一个或第二个预测中。以下是示例结果:
Part_Number Company_Code First_Date_Match Second_Date_Match
9D0094-2 EAIL1 Y Y
9D0094-4 EAIL1 N Y
9D0094-5 EAIL1 N Y
9D0166-10 EAIL1 N Y
9D0166-24 EAIL1 N Y
9D0197-1 EAIL1 Y N
感谢您的帮助。
我尝试了几种sql变体,包括
GROUP BY Part_Number
. 下面是我最新的尝试使用 SELECT DISTINCT
. 当 Part_Number
出现在两个 Date_of_FC
我没有收到一封信 First_Date_Match
的 Y
和一个 Second_Date_Match
的 Y
.
SELECT DISTINCT tbl_FC_Data.Part_Number, IIf([tbl_FC_Data]![Date_of_FC]=#7/1/2020#,"Y","N") AS
First_Date_Match, IIf([tbl_FC_Data]![Date_of_FC]=#6/1/2020#,"Y","N") AS Second_Date_Match
FROM tbl_FC_Data
WHERE (((tbl_FC_Data.Company_Code)="EAIL1") AND ((tbl_FC_Data.Date_of_FC)=#7/1/2020#)) OR
(((tbl_FC_Data.Date_of_FC)=#6/1/2020#))
ORDER BY tbl_FC_Data.Part_Number;
1条答案
按热度按时间uurity8g1#