【问题标题】:Aggregate function error in Access update query using Max()使用 Max() 的 Access 更新查询中的聚合函数错误
【发布时间】:2013-07-17 01:08:53
【问题描述】:
UPDATE tblFiles INNER JOIN dbo_tblStats ON tblFiles.FileName = dbo_tblStats.Video SET tblFiles.CurRecord = Max([dbo_tblstats.stopframe])
WHERE (((tblFiles.Progress)<90));

代码的目的是从一个表中获取最高帧号,并在完成率低于 90% 的条目上用它替换另一个表中的当前帧号。选择查询返回 Max 很好,但执行更新会引发错误:

“您尝试执行的查询不包含指定表达式 'CurRecord' 作为聚合函数的一部分。”

我们将不胜感激,谢谢。

【问题讨论】:

    标签: ms-access aggregate-functions max


    【解决方案1】:

    查看DMax 表达式(请参阅DMin, DMax Functions)是否从dbo_tblStats 获得您需要的内容...请求stopframe 的最大值,其中Video 与当前FileName 值匹配。

    假设VideoFileName 都是文本数据类型,试试这个查询。

    UPDATE tblFiles
    SET CurRecord =
            DMax(
                "stopframe",
                "dbo_tblStats",
                "Video='" & FileName & "'"
                )
    WHERE Progress<90;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-07-04
      • 1970-01-01
      • 1970-01-01
      • 2020-03-31
      • 2020-03-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多