0
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' 作为聚合函数的一部分。”

对此的帮助将不胜感激,谢谢。

4

1 回答 1

1

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

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

UPDATE tblFiles
SET CurRecord =
        DMax(
            "stopframe",
            "dbo_tblStats",
            "Video='" & FileName & "'"
            )
WHERE Progress<90;
于 2013-07-16T16:23:30.180 回答