插入具有相同表的最大结果的行

时间:2012-10-13 09:10:24

标签: mysql sql

INSERT INTO table VALUES (NULL, 45, 12, NOW(), SELECT MAX(current_price) + 1 FROM table)

我想插入一个“当前价格”等于同一个表的最高价加1的行。 我正在使用SELECT MAX(current_price) + 1 FROM table来执行此操作。

问题是它返回错误 有人可以帮忙吗?

1 个答案:

答案 0 :(得分:3)

在子查询周围使用括号:

INSERT INTO table 
VALUES (NULL, 45, 12, NOW(), (SELECT MAX(current_price) + 1 FROM table));

更好的方法:

INSERT INTO table 
SELECT NULL, 45, 12, NOW(), MAX(current_price) + 1 FROM table;