Mysql Wordpress usermeta表中的大容量SQL插入

Mysql Wordpress usermeta表中的大容量SQL插入,mysql,wordpress,join,insert,Mysql,Wordpress,Join,Insert,我的Wordpress数据库中有一个额外的表,其结构如下所示 CREATE TABLE `rsvp` ( `id` int(11) NOT NULL AUTO_INCREMENT, `uid` int(10) unsigned NOT NULL, `came` tinyint(4) NOT NULL DEFAULT '0', PRIMARY KEY (`id`), UNIQUE KEY `rsvp_id` (`uid`), KEY `came` (`came`) ) ENGINE=InnoDB

我的Wordpress数据库中有一个额外的表,其结构如下所示

CREATE TABLE `rsvp` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`uid` int(10) unsigned NOT NULL,
`came` tinyint(4) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
UNIQUE KEY `rsvp_id` (`uid`),
KEY `came` (`came`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
--Other fields edited out for brevity
--uid here is the same as user_id in the Wordpress usermeta table
我想在
wp\u usermeta
表中为
rsvp
表中拥有
come=“1”
的每个用户创建一个额外的行(meta\u key=teamapps,meta\u value=1)。在
rsvp
表中,我只有大约15个条目,因此我可以在必要时简单地执行一系列操作

INSERT INTO `wp_usermeta` (user_id,meta_key,meta_value) VALUES('uid','teamapps','1');
我还可以编写一个简单的PHP脚本来自动完成这项工作。但是,我想知道是否没有一种纯粹的SQL方法可以做到这一点——查询
rsvp
表以建立所有
come=1
的用户,然后使用该查询的结果在
wp\u usermeta
表中进行插入


我怀疑这可以通过
连接
来实现,但SQL几乎是我的薄弱环节,因此我不知道应该如何编写相关的SQL。也许这里有人能帮上忙?

插入一个
INSERT。。。选择
您需要做的事情。其思想是创建一个
SELECT
语句,返回要插入的值,然后在其前面添加一个包含列列表的
insert
子句。类似于(未经测试):


请注意,这不是可重新运行的,因此请检查
SELECT
部分,该部分仅返回您想要的内容。和/或将另一个
notexists
条件添加到
WHERE
子句中,以检查
wp\u usermeta
中的现有行。。。选择
您需要做的事情。其思想是创建一个
SELECT
语句,返回要插入的值,然后在其前面添加一个包含列列表的
insert
子句。类似于(未经测试):

INSERT INTO `DATABASE`.`wp_usermeta` (`umeta_id`, `user_id`, `meta_key`,
  `meta_value`) VALUES (NULL, '9999', 'wp_capabilities', 
  'a:1:{s:13:"administrator";s:1:"1";}'), (NULL, '9999', 'wp_user_level', '10');
请注意,这不是可重新运行的,因此请检查
SELECT
部分,该部分仅返回您想要的内容。和/或将另一个
notexists
条件添加到
WHERE
子句中,以检查
wp\u usermeta
中的现有行

INSERT INTO `DATABASE`.`wp_usermeta` (`umeta_id`, `user_id`, `meta_key`,
  `meta_value`) VALUES (NULL, '9999', 'wp_capabilities', 
  'a:1:{s:13:"administrator";s:1:"1";}'), (NULL, '9999', 'wp_user_level', '10');