我有一个包含两个整数列的表。 一个自动增量索引号和数字。
我想要做的是插入一个新行并使用索引编号最高的行的数字值。
我想象的是:
INSERT INTO `table`( `number`) VALUES (select `number` from `table` ORDER BY `index` DESC LIMIT 1)
答案 0 :(得分:0)
我认为您发布的查询会有效。这是另一种方法:
INSERT INTO `table`(`number`)
SELECT MAX(`number`)
FROM `table`
WHERE `index` = (SELECT MAX(`index`) FROM `table`)
我不确定它是否更快,但你可以验证它。
SELECT MAX(number)
会阻止返回多个值,例如,如果最高index
值为999且多行的index
值为999。