我现在有4张表,目的是在结果表中显示哪些机型的物料有包装,价格,供应商信息
1:信息表A(SPP ZT2),这是张动态表,可以插入物料(Final_Item_number ),机型等信息字段。
2:价格表B,这也是动态表,里面只包括物料字段。
3:包装和供应商信息表,这也是动态表,里面包括物料,包装和供应商字段。
4最后1张结果表:里面包括物料:机型,价格,包装,供应商字段,如果有价格信息用1表示,如果有包装信息也为1,如果有供应商信息也为1.
现在我的问题是:当信息表中有相同的物料字段时,我希望做到自动更新价格,包装和供应商信息,当只要有相同物料并且找到价格中有为1的话,那么自动更新这条记录的价格为1.
目前我的query如下:但是这个会把所有相同物料的价格都设置为1.求教如何修改
UPDATE result LEFT JOIN [SPP ZT2] ON result.Final_Item_number = [SPP ZT2].Final_Item_number SET result.[Lisa Price] = 1
WHERE (((result.[Lisa Price]) In (SELECT [Lisa Price] FROM [result] 1)) AND ((result.Final_Item_number) In (SELECT [Final_Item_number] FROM [result] GROUP BY [Final_Item_number] HAVING Count(*)>1)));
[tr] [td=182]Final_Item_number[/td] [td=124]A[/td] [td=115]B[/td] [td=156]C[/td] [/tr]
[tr] [td=182]
((result.[Lisa Price]) In (SELECT [Lisa Price] FROM [result] where result.[Lisa Price]=1)老师,这样不行,不会更新到我已经测试过。
看样子必须要access插入vba了。Access插入vba的方法能否教下?
不尽感激