有一个名为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
答案 0 :(得分:1)
在Access中我不确定它是否可以在纯SQL中完成,但我认为这可以让你接近你想要的:
UPDATE sample AS s
SET s.id2 = Dmax("id2", "sample", "id <" & [s].[id])
WHERE (( ( s.id2 ) IS NULL ));