MySQL根据SELECTing其他表的结果INSERT多行

时间:2014-07-02 13:33:44

标签: mysql select insert

以下查询根据one向我提供表condition中不同ID的结果:

SELECT id FROM one WHERE condition

我需要使用这些ID将数据插入另一个表中:

INSERT INTO two (id, col1, col2) VALUES
(1st-id-from-above, 'foo','bar'),
(2nd-id-from-above, 'foo','bar'),
…
(last-id-from-above, 'foo','bar');

'foo''bar'始终相同,它们是静态的。唯一有活力的事情是:

  • ID的数量(即要插入two的行数),
  • ID本身(即要插入two的第一列的值)。

我该如何自动完成这项工作?

这两个表不完全相同,所以我不处理将行从一个表移动到另一个表。

1 个答案:

答案 0 :(得分:1)

INSERT INTO two (id, col1, col2)
SELECT id, 'foo', 'bar'
FROM one 
WHERE condition