基于常见ID将三个表连接在一起

时间:2016-01-13 01:11:46

标签: mysql sql

enter image description here

我想要生成的是 wp_tylerposts 表,其格式与查询相同(仅选择 post_type ='赞助商&# 39; ,但我想引用其他两个表(来自 wp_tylerterm_relationships object_id 以及相应的名称 wp_tylerterms )因此添加到wp_tylerposts将是来自wp_tylerterms的相应 名称 值(添加到表中将是" Gold赞助商&# 34;,例如)。

希望这是有道理的。我确信这是一个非常简单的解决方案,而且我已经尝试过一些连接查询而没有任何运气......很长一段时间没有做任何事情。任何帮助将不胜感激!

编辑:我想,我已经走近了,但我仍然无法找回"名称"来自wp_tylerterms的列值,这里是我所拥有的:

SELECT 
    c.ID, c.post_title, a.name
FROM 
    wp_tylerposts c
LEFT JOIN
    wp_tylerterm_relationships b
ON
    c.ID = b.object_id
LEFT JOIN
    wp_tylerterms a
ON
    b.object_id = a.term_id
WHERE
    c.post_type = 'sponsor'

1 个答案:

答案 0 :(得分:2)

在第二个join中,您使用b.object_id代替b.term_taxonomy_id。您的查询应如下所示:

SELECT 
    c.ID, c.post_title, a.name
FROM 
    wp_tylerposts c
LEFT JOIN
    wp_tylerterm_relationships b
ON
    c.ID = b.object_id
LEFT JOIN
    wp_tylerterms a
ON
    b.term_taxonomy_id = a.term_id
WHERE
    c.post_type = 'sponsor'