对mysql中的所有行执行相同的查询

时间:2014-02-12 00:40:09

标签: mysql sql

我有一个表(myTable),其中一些列是id(主键)。

id(primary key) col1 col2 ...

我想计算每行的列值,并将其放在另一个表中,其中id为列,计算值为另一列。我现在可以通过插入新表(testResults)逐个执行此操作,但我想为所有行执行此操作。

insert into testResults (id , calculatedResult)
values(1, log(select col1 from myTable where id = 1));

不是为每一行提及id,而是用第一个表的所有行填充Result表吗?

1 个答案:

答案 0 :(得分:2)

您需要insert . . . select语法:

insert into testResults (id , calculatedResult)
    select id, log(col1)
    from myTable;