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