0

如何将两个表 (wp_postswp_postmeta) 中的值插入到一个 ( wp_linkz) 中?

我有 2 张桌子

1 wp_posts

  • (ID,post_name,post_type)
  • 1、第一、文章
  • 2,第二,网址
  • 三、第三条
  • 4,第四,网址

2 wp_postmeta

  • (post_id,meta_key,meta_value)
  • 1,the_article,1000
  • 2、the_url、google.com
  • 3,the_article,3000
  • 4、the_url、bing.com

结果应该是这样的

3 wp_linkz

  • (身份证,姓名,网址)
  • 2,第二,google.com
  • 4、第四、bing.com

ID(来自 wp_post)与 post_id(来自 wp_postmeta)相同。

我想插入wp_linksidID 只适用于那些 post_type=urls 的人)、namepost_nam只适用于那些有 的人post_type=urls)和urlmeta_value只适用于那些有 的人meta_key=the_url

谢谢。

4

1 回答 1

1

我会使用这个查询:

INSERT INTO wp_linkz (id, name, url)
SELECT wp_posts.id, wp_posts.post_name, wp_postmeta.meta_value
FROM
  wp_posts INNER JOIN wp_postmeta
  ON wp_posts.id = wp_postmeta.post_id
     AND wp_posts.post_type = 'urls'
     AND wp_postmeta.meta_key = 'the_url'

在此处查看小提琴。

于 2013-06-29T09:31:32.500 回答