使用access sql做INSERT INTO(聚合函数)

时间:2011-05-31 01:55:53

标签: sql ms-access insert

这是我的代码:

insert into archive from temp where temp.field6>archive.field6

我想将整行插入表archive中的表temp,其中一个字段大于另一个字段。

我的语法有什么问题?它给了我ERROR ON INSERT InTO

编辑:

这是我到目前为止所拥有的:

INSERT INTO archive
SELECT temp.*
FROM temp, archive
WHERE temp.field6>max(archive.field6);

对不起,我对第一个查询完全错误

请注意新的MAX

我收到错误,因为我不能在这里使用聚合函数。

2 个答案:

答案 0 :(得分:3)

INSERT INTO archive
SELECT temp.*
FROM temp
WHERE temp.field6>(SELECT max(archive.field6) FROM archive);

答案 1 :(得分:1)

根据MSDN,您需要在SELECT中使用更全面的语法。例如:

INSERT INTO archive SELECT temp.* FROM temp, archive 
GROUP BY temp.field6 HAVING temp.field6 > max(archive.field6);