在mysql中为每个结果运行一个循环

时间:2014-07-21 09:08:04

标签: mysql

我有以下查询

SELECT @var:= meta_value, @no:=post_id FROM tbl WHERE `meta_key` ="_wpbdp[fields][10]"

现在这会得到大约500个结果..
我想为INSERT@var变量的每个值运行另一个@no查询。

实施例::

 INSERT INTO tbl ('value','id') VALUES (@var,@no);

我如何在LOOP中获得这个?

1 个答案:

答案 0 :(得分:1)

你不需要循环,顺便说一句,这些变量总是只有一个值。

INSERT INTO tbl(`value`, `id`)
SELECT meta_value, post_id FROM tbl WHERE `meta_key` = "_wpbdp[fields][10]";

还要注意,这个

INSERT INTO tbl ('value','id') 

是错误的,因为'使用valueid字符串,而不是列名。

详细了解可能的insert语法here