2009-10-16 67 views
0

我正在使用MS Access中的玻璃类型数据库。如何使用交叉引用表更新特定字段?

在DB一个表列出了有关的玻璃基本信息:唯一的ID( “玻璃数”),描述,每平方英尺成本等

表1 “GlassInfo”:。

 
GlassNo Description  CostSqFt TemperCost LamiCost 
0001 "Heavy Glass" 1.38  0.18  0.65 
0002 "0001 Tempered" 1.50  0.18  0.65 
0003 "0001 Laminated" 1.62  0.18  0.65

一个表是一个交叉引用,列出的所有的“碱”的玻璃号(非调质)玻璃和回火后玻璃的数目(一个或多个)等

表2“GlassCR”:

 
BaseType SameAs 
0001  0002 
0001  0003

我该怎么做关键SQL查询通过并更改GlassInfo.CostSqFt以匹配GlassCR.BaseTypeGlassInfo.CostSqFt对于那个GlassInfo.GlassNo?基本上,我如何使CostSqFt匹配“父”GlassNo

回答

0
UPDATE 
    (GlassCR AS c 
    INNER JOIN GlassInfo AS i1 
    ON c.BaseType = i1.GlassNo) 
    INNER JOIN GlassInfo AS i2 
    ON c.SameAs = i2.GlassNo 
SET 
    i2.CostSqFt = i1.CostSqFt;