WordPress: подзапрос с объединением таблиц - PullRequest
0 голосов
/ 22 января 2011

Запрос сортирует сообщения по просмотрам страниц - это работает отлично. Но мне нужно присоединиться к wp_term_taxonomy.term_taxonomy_id . Как это:

WHERE wp_term_taxonomy.term_taxonomy_id ='2'

код:

$qstr = "
    SELECT wposts.*
    FROM $wpdb->posts wposts, 
    (select postid, sum(pageviews) pageviews 
    from $pageviews_table 
    group by postid) pv
    WHERE wposts.post_status = 'publish' 
    AND wposts.post_type = 'post'
    AND wposts.ID = pv.postid
    ORDER BY pv.pageviews DESC
    LIMIT 10
 ";

Я пробовал это:

$qstr = "
    SELECT wposts.*, wp_term_taxonomy.term_taxonomy_id
    FROM $wpdb->posts wposts, 
    (select postid, sum(pageviews) pageviews 
     from $pageviews_table 
     group by postid) pv
    WHERE wposts.post_status = 'publish' 

    INNER JOIN
             wp_term_taxonomy
             AND xxxx // dont know
    WHERE    wp_term_taxonomy.term_taxonomy_id = '13'

    AND wposts.post_type = 'post'
    AND wposts.ID = pv.postid
    ORDER BY pv.pageviews DESC
    LIMIT 10
 ";

1 Ответ

0 голосов
/ 22 января 2011

Почему вы используете join? Не подойдет ли вам эта работа:

$qstr = "
SELECT wposts.*, wp_term_taxonomy.term_taxonomy_id
FROM $wpdb->posts wposts, 
(select postid, sum(pageviews) pageviews 
 from $pageviews_table 
 group by postid) pv, wp_term_taxonomy
WHERE wposts.post_status = 'publish' 
AND    wp_term_taxonomy.term_taxonomy_id = '13'
AND wposts.post_type = 'post'
AND wposts.ID = pv.postid
ORDER BY pv.pageviews DESC
LIMIT 10 ";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...