使用变量mysql从select语句中插入多行


Insert multiple rows from select statement with variable mysql

以下是我尝试将数据从一个表添加到另一个表的sql语句。

INSERT INTO wp_postmeta(`post_id`,`meta_key`,`meta_value`) VALUES((SELECT ID FROM wp_posts tb WHERE tb.post_type = 'support'),'category_order','0')

Basicaly我想在wp_postmeta表中添加行。我想添加两个静态值,meta_key和meta_value。但我也想添加post_id,它应该从wp_posts中每一行的id派生而来。当SELECT语句返回多行时,这似乎不起作用。

谢谢你的帮助。

请改用

INSERT INTO wp_postmeta(post_id,meta_key,meta_value) SELECT ID, 'category_order','0' FROM wp_posts tb WHERE tb.post_type = 'support'

INSERT INTO wp_postmeta(`post_id`,`meta_key`,`meta_value`) SELECT ID, 'category_order','0' FROM wp_posts tb WHERE tb.post_type = 'support'