MySQL LAST_INSERT_ID()与INSERT INTO表SELECT FROM表

时间:2014-04-10 17:38:03

标签: mysql lastinsertid insert-select

是否可以使用目标表中的LAST_INSERT_ID更新表?

INSERT INTO `target` SELECT `a`, `b` FROM `source`

目标表有一个自动增量密钥 id ,我想将其存储在 source 表中以供进一步使用。

如果像这样的话可能会节省很多计算能力:)

1 个答案:

答案 0 :(得分:1)

执行后立即:

INSERT INTO `target` SELECT `a`, `b` FROM `source`

source表格上调用更新,如下所示:

UPDATE `source` 
SET field_name = LAST_INSERT_ID() 
WHERE col_name_x = some_value_or_expression

更改列名称和条件,然后执行它。