SQL
SELECT *
FROM posts
LEFT JOIN taxonomy_term_map
ON (posts.ID = taxonomy_term_map.object_id)
WHERE taxonomy_term_map.term_id
IN (98,119)
GROUP BY posts.ID DESC
HAVING COUNT(posts.ID ) >= 2
LIMIT 0,20
ТАБЛИЦЫ И КОЛОННЫ
posts {ID, post_title и т. Д ...}
taxonomy_terms {term_id, term_label, term_slug и т. д.}
post_taxonomy_term_map {map_id, object_id, taxonomy, term_id} (ПРИМЕЧАНИЕ: object_id относится к значению posts.ID)
Myсайт использует таксономическую структуру Toxi для пометки / классификации сообщений.К каждому сообщению может быть прикреплено несколько идентификаторов терминов.
Каждый термин таксономии, связанный с сообщением, получает запись в таблице "post_taxonomy_term_map".
Используемый в настоящее время запрос возвращает совпадающие записи.вверху результатов («GROUP BY posts.ID DESC») вместе с дополнительными записями, которые не полностью соответствуют всем предоставленным условиям.
Я только хочу выбрать записи, которые соответствуют ВСЕМ предоставленным значениям идентификатора термина, все остальное следует игнорировать.Кроме того, я хочу упорядочить записи по posts.rank, но пока не могу этого сделать при упорядочивании записей по GROUP.
Буду признателен за помощь.