|
5#
楼主 |
发表于 2011-6-20 09:32:14
|
只看该作者
多谢ROYCH版主,因为我更新的是bchuku的单价,所以语句我改成了如下,后面的WHERE如你所说,是相应的条件,用来判定哪些记录是否更新单价以及更新对应的年和月:
UPDATE bchuku LEFT JOIN bjiecun ON bchuku.物料编码 = bjiecun.物料编码 SET bchuku.出库单价1 = [bjiecun].[单价], bchuku.出库金额1 = [bjiecun].[单价]*[bchuku].[发料数量]
WHERE (((bchuku.加权运算)=-1) AND ((Year([bchuku].[出库日期]))=[forms]![ctzhujiemian].[wbknian]) AND ((Month([bchuku].[出库日期]))=[forms]![ctzhujiemian].[wbkyue]))
但是出现两个问题,1.在查询分析器里切换到数据表视图里显示出来的更新记录比bchuku表的记录反而要多?Bchuku表的记录是11935,而查询分析器里显示的是11957?为何,后续是否会有问题
2.因为我是按照年和月作条件的,所以Bjiecun表里有可能出现编码相同,但是年和月不同的记录,这个时候我是否要这样写条件
UPDATE bchuku LEFT JOIN bjiecun ON bchuku.物料编码 = bjiecun.物料编码 SET bchuku.出库单价1 = [bjiecun].[单价], bchuku.出库金额1 = [bjiecun].[单价]*[bchuku].[发料数量]
WHERE (((bchuku.加权运算)=-1) AND ((Year([bchuku].[出库日期]))=[forms]![ctzhujiemian].[wbknian]) AND ((Month([bchuku].[出库日期]))=[forms]![ctzhujiemian].[wbkyue]) AND ((bjiecun.年)=[forms]![ctzhujiemian].[wbknian]) AND ((bjiecun.月)=[forms]![ctzhujiemian].[wbkyue]))
但是这样写的条件在查询分析器里显示的记录又只有11920,不应该也是等于bchuku的11935吗
以上两个问题,版主帮忙看下
|
|