使用先前记录中的值更新空表值

时间:2012-08-29 05:32:30

标签: vba ms-access

有一个名为sample的表,它有两列id和id2。 id2上的一些记录用数字填充,但有些记录为空。所以我需要填写与他们最接近的记录相同的号码。也就是说,如果id2上的每个记录都不为null,则转到下一个记录,如果id2上的每个记录都为null,则将其填入前一个记录。我怎么能用vba做到这一点?

样品

id    id2
1     100
2     
3     500
4     600
5     
6     800

sample_result

id    id2
1     100
2     100
3     500
4     600
5     600
6     800

1 个答案:

答案 0 :(得分:1)

在Access中我不确定它是否可以在纯SQL中完成,但我认为这可以让你接近你想要的:

UPDATE sample AS s
SET    s.id2 = Dmax("id2", "sample", "id <" & [s].[id])
WHERE  (( ( s.id2 ) IS NULL ));