【问题标题】:Update null table values with value from previous record使用上一条记录中的值更新空表值
【发布时间】:2012-08-29 05:32:30
【问题描述】:

有一个名为 sample 的表,它有两列 id 和 id2。 id2 上的一些记录是用数字填充的,但有些是空的。所以我需要用与他们最接近的记录相同的数字来填写它们。也就是说,如果id2上的每条记录都不为空,则继续下一条,如果id2上的每条记录都为空,则用上一条填写。如何使用 vba 做到这一点?

样本

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

样本结果

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

【问题讨论】:

  • 为什么是 VBA,为什么不是 UPDATE 查询?
  • 是否可以仅使用 UPDATE 查询?

标签: vba ms-access


【解决方案1】:

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-06-25
    • 2021-02-13
    • 1970-01-01
    • 2021-02-18
    • 1970-01-01
    • 2021-07-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多