我不是一个很好的选择陈述工匠,希望有人能提供帮助。我有两个制造零件表:
STOCK 表中有常备库存。它包含所有零件编号,这些零件编号存在于多行中,因为零件分散在多个位置。这是对的。
RECEIPT 表是某人构建的表。它只是最近收到零件的年份。每一行只有零件编号和收货年份。零件编号仅明确列出一次。
我正在尝试将 Receipt Year 列粘贴到原始 STOCK 表上,以仅报告收到零件的年份。我不想更改 STOCK 表中的原始数据,只需根据 PART NUMBER 上的匹配将收据年份添加到每一行。这是我的选择声明:
SELECT DISTINCT STOCK.Project, STOCK.[Part Id], STOCK.Warehouse, STOCK.Location, RECEIPTS.Year from STOCK LEFT JOIN RECEIPTS on STOCK.[Part Id] = RECEIPTS.ITEM_ID GROUP BY STOCK.Project, STOCK.[Part Id], STOCK.Warehouse, STOCK.Location, RECEIPTS.Year;
不幸的是,我的查询不断复制 RECEIPTS 表中可用的每一年的行,如下所示:
Proj Part Id Whse_ID Loc Receipt_Year
A198.730 5962-9313101MPA 770 GFMSTK-116B2 2004
A198.730 5962-9313101MPA 770 GFMSTK-116B2 2005
A198.730 5962-9313101MPA 770 GFMSTK-116B2 2006
A198.730 5962-9313101MPA 770 GFMSTK-116B2 2007
A198.730 5962-9313101MPA 770 GFMSTK-116B2 2009
A198.730 5962-9313101MPA 770 GFMSTK-116B2 2011
A198.730 5962-9313101MPA 770 GFMSTK-116B2 2012
A198.730 5962-9313101MPA 770 GFMSTK-116B2 2013
仅在 2004 年收到了 5962 份(收据中有不同的一行)。
任何帮助是极大的赞赏。谢谢,JM