0
我有一个包含两个整数列的表。 一个自动增加索引号码和号码。在MySQL期间从其他数据集检索值INSERT
我想要做的是插入一个新行,并使用索引号最高的行的数值。
我想象的是这样的:
INSERT INTO `table`(`number`) VALUES (select `number` from `table` ORDER BY `index` DESC LIMIT 1)
我有一个包含两个整数列的表。 一个自动增加索引号码和号码。在MySQL期间从其他数据集检索值INSERT
我想要做的是插入一个新行,并使用索引号最高的行的数值。
我想象的是这样的:
INSERT INTO `table`(`number`) VALUES (select `number` from `table` ORDER BY `index` DESC LIMIT 1)
我想你会张贴工作查询。这是另一种方法:
INSERT INTO `table`(`number`)
SELECT MAX(`number`)
FROM `table`
WHERE `index` = (SELECT MAX(`index`) FROM `table`)
我不确定它是否更快,但是您可以验证。
的SELECT MAX(number)
防止多于一个的值被返回,如果,例如,最高值index
是999和多个行具有index
值的999
为什么不'INSERT INTO myTable的VALUES(SELECT MAX (indexNumberColumnName)FROM mytable)' – 2013-04-10 22:21:39