【发布时间】:2012-12-05 03:34:02
【问题描述】:
我已经使用内置的导入器在 bbpress 中通过 phpbb3 论坛导入。来自 bbpress 的所有没有帐户但被允许发帖的匿名用户都与那里的帖子断开连接,所有内容在 bbpress 中都显示为匿名。我从phpbb_posts 中获取了所有post_usernames 并使用此查询创建了用户:
INSERT INTO wp_users (user_login)
SELECT DISTINCT post_username
FROM phpbb_posts
现在我正在尝试在 3 个不同的表之间进行查询。类似这样的事情:
SELECT ID FROM wp_users
INSERT INTO wp_posts(post_author)
WHERE wp_posts(post_date) = phpbb_posts(post_time)
AND phpbb_posts(post_username) = wp_users(user_login)
显然这是不对的...可能是语法错误,但我还需要添加一些方法来告诉 MySQL user_login 必须从第一行附加到 ID。希望这是有道理的。提前感谢您的帮助!
更新的查询:
SELECT ID FROM wp_users
SELECT post_time FROM phpbb_posts = post_date
SELECT post_username FROM phpbb_posts = user_login
希望这种语法更有意义。这些确实有效,他们选择了正确的信息。问题是我不知道如何正确编写 WHERE 语句,就像你说的 baskint 一样,我想我需要以某种方式使最后一个语句成为子查询。再次感谢!
【问题讨论】:
-
能否请您发布您的表格结构?
-
我假设
wp_users.ID是wp_posts.ID和phpbb_post.post_id的外键? -
如果我正确理解外键...
wp_users.ID是wp_posts.ID的外键,但未链接到phpbb_posts.post_id。phpbb_posts.post_id没有与进口商一起进入wp_posts,所以我认为它没有同步到任何东西。谢谢! -
所以...
phpbb_posts.post_id是空的吗?
标签: mysql sql forum phpbb3 bbpress