![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Приветствую
В базе есть таблицы wp_posts В ней все посты, с названием, полной новостью итд Также есть таблица wp_term_taxonomy, ассоциации, тут кроме всего прочего располагаются записи о некоторых типах данных, по которым мне нужно делать выборку. Столбцы в этой таблице Также есть таблица wp_term_relationships И таблица wp_terms Для выборки всех постов, у которых в поле wp_terms есть "Феодосия" я использую такой запрос SELECT post_title,post_content FROM wp_posts WHERE id IN (SELECT object_id from wp_term_relationships WHERE term_taxonomy_id IN (SELECT term_taxonomy_id FROM wp_terms AS t INNER JOIN wp_term_taxonomy AS tt ON t.term_id = tt.term_id WHERE tt.taxonomy IN ( 'location' ) AND name="Феодосия" ORDER BY t.name ASC)) А как составить этот же запрос но, чтобы выбирались, скажем, в этом городе, но еще и только wp_terms.slug (то есть, walk,aboard,fly,drive) я не могу. Помогите пожалуйста его составить. |
|
|||||
|
Modus ponens
|
SELECT post_title, post_content FROM wp_posts JOIN wp_term_relationships ON wp_term_relationships.object_id = wp_posts.term_taxonomy_id JOIN wp_terms ON wp_terms.term_taxonomy_id = wp_term_relationships.term_taxonomy_id JOIN wp_term_taxonomy ON wp_terms.term_id = wp_term_taxonomy.term_id WHERE name = "Феодосия" AND wp_term_taxonomy.taxonomy = "location" ORDER BY wp_terms.name ASC Вопрос я не совсем понял, вы хотите фильтровать по wp_terms.slug, или вернуть его вместе с уже имеющимся результатом? Если 1. то добавьте его в where соответствующий, если 2. то добавьте его в первый select.
__________________
Hell is the possibility of sanity |
|
|||||
|
Спасибо за совет про планировщик, но я очень далек от оптимизации запросов.
Мне нужно было выбрать все посты из таблицы wp_posts, так чтобы в таблице wp-terms из столбца name выбирался "Пешком" + только те посты которые соответствуют городу "Феодосия" Получается вот такая штучка
|
![]() |
![]() |
Часовой пояс GMT +4, время: 14:55. |
|
|
« Предыдущая тема | Следующая тема » |
|
|