我有三个表,一个持有材料数据(材料),一个持有供应商(供应商),每个供应商和材料持有一个价格(供应商价格)。一种材料可以有多种价格,每个供应商一个价格。
我有一个表格,每行显示各种材料数据。此表单还显示特定供应商的可编辑价格(supplierID 100)。查询中的表关系是“包括连接字段相等的所有材料行”,并且在条件supplierID = 100中。因此,每个材料只有一行,包括该供应商的可编辑价格。
但是现在我想显示每行第二个可编辑的价格,即供应商ID 200的价格。如果我将标准扩展到“supplierID = 100 OR supplierID = 200”,我会得到每个材料两行,这不是我的意思想。我想要的是在一行中显示两种价格,以及大量的材料数据。首先我用VBA函数做了它,在查询中调用它,但是后面的controlsource是一个表达式,不能分别存储数据。
有没有办法在查询中使用一些特殊的选择?或者我宁愿使用VBA(再次)将其存储在适当的表中?
感谢您的提示。
答案 0 :(得分:0)
TRANSFORM Max(supplierPrices.[price]) AS price
SELECT supplierPrices.[materialID]
FROM supplierPrices
GROUP BY supplierPrices.[materialID]
PIVOT supplierPrices.[supplierID];
但这只是一个。