我有两个名为wordpress
和drupal.content_field_image
的数据库。我尝试将后映像路径从drupal 6迁移到wp。
表drupal_files
和drupal.content_field_image
包含必要的数据:
drupal.drupal_files
有field_image_fid - nid对。 SELECT *
FROM `content_field_image`
JOIN `files` ON content_field_image.field_image_fid = files.fid;
有fid - 文件路径对(field_image_fid = fid)。
我需要获取包含nid和filepath的表,所以我加入了这些表:
wordpress
现在我需要将数据插入meta_id
db,以便:
post_id
= 34 + n(n为增量)
nid
= meta_key
来自已加入的表格
meta_value
= fifu_image_url
filepath
= WaitForSingleObject ( pi.hProcess, INFINITE );
来自已加入的表格
所以我有一些问题:
答案 0 :(得分:0)
如何从连接表中插入?
使用INSERT INTO .. SELECT FROM
构造
如何在每次插入后使n增加1?
将列n
声明为auto_increment
列。否则,如果您的相关表已经有auto_increment
列,则必须自己完成。
如何使类似while循环插入连接表中的每个条目
根本不需要。 INSERT .. SELECT
构造将所有提取的行插入到引用的表中。
答案 1 :(得分:0)
使用select的插入可能是这样的:
insert into wordpress.table
SELECT (@i:=@i+1), nid, fifu_image_url, filepath
FROM drupal.content_field_image
JOIN drupal.files ON content_field_image.field_image_fid = files.fid;
join (select @i:=34) inc on true
要使其正常工作,您选择的列必须与您要插入的表格具有相同的列。
可以使用此变量@i进行增量int,按照您的需要初始化为34,并按打印结果逐步递增1。