Как отсортировать sql по другой таблице sql? - PullRequest
0 голосов
/ 18 мая 2011

У меня есть две таблицы.

wp_term_relationships
     term_taxonomy_id
     ...

wp_posts
     ID
     ...
     menu_order

Я беру все значения из wp_term_relationships

$results = $wpdb->get_results("SELECT `object_id` 
                               FROM `wp_term_relationships` 
                               WHERE `term_taxonomy_id`='".$cat_id."'");

и затем брать для каждого значения, которые мне нужны

foreach($results as $result){

   $postarrayStringINT[] = $result->object_id;

    $results2 = $wpdb->get_results("SELECT * FROM `wp_posts` 
                                    WHERE `ID`='".$result->object_id."' ");

Но мне нужно, чтобы они были в правильном порядке, а это таблица menu_order в wp_posts, как это сделать?

Я пробовал что-то подобное:

"SELECT `object_id` FROM `wp_term_relationships` 
 WHERE `term_taxonomy_id`='".$cat_id."' JOIN (SELECT * FROM 'wp_posts') 
 ORDER BY 'menu_order'"

Как это сделать? Как взять одно значение из таблицы и отсортировать / порядок по его по другим значениям таблиц?

1 Ответ

0 голосов
/ 18 мая 2011

Вы должны попробовать что-то вроде этого:

SELECT field1, field2, field3, etc... 
FROM wp_posts
INNER JOIN wp_term_relationships on wp_posts.id = wp_term.object_id
WHERE term_taxonomy_id=".$cat_id."
ORDER BY menu_order
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...