我将mysql 5.5与php 5.4结合使用。我正在执行大容量插入,需要捕获所有新插入的ID。这是我的代码:

$db->query("INSERT INTO commodity (analysis_id, commodity_description, a_units,
a_average_yield, a_average_price) SELECT $analysis_id, commodity_description,
a_units, a_average_yield, a_average_price FROM commodity WHERE analysis_id =
$import_analysis_id");

是否有方法检索插入行的所有新ID?使用$db->insert_id只返回一个id。我不想使用php循环并执行多个查询,但如果必须的话,我会使用。谢谢!

最佳答案

通过首先选择表中最高的id,可以找到自动递增的ids。ids高于插入后的新值。

select max(id) from commodity

09-07 23:36