Рассмотрим эти три таблицы:Выберите новости, присоединиться по нескольким тегам
Новости (Столбцы: ID и т.д.)
News_Tag_Cross (Столбцы: ID, NewSID, TagID)
Тэги (Столбцы: Идентификатор, имя)
Как получить все статьи новостей, которые имеют два тега: «Дилер» И «Клиенты»?
я могу запустить этот запрос для обоих тегов & UNION результаты, но возвращает строки для каждой Dealer тега или Client тега. Очевидно, что я хочу вернуть новостные статьи, которые соединены с обоими.
SELECT n.id FROM news
INNER JOIN news_tag_cross ntc
ON ntc.newsid=n.id
INNER JOIN tags t
ON t.id=ntc.tagid
WHERE news_tag_cross.tagID = 'DealerID'
я должен отметить, что это приблизительный перевод моего текущего запроса - Я не хочу, чтобы отдать имена таблиц и т.д., или запутать любой с дополнительными столбцами и данными.
раздавать имена таблиц? Это немного параноидально, не так ли? Обратите внимание, что 'id' в таблице' news_tags_cross', как представляется, не имеет никакой цели. – Strawberry
Безопасность и упрощение. PS. У идентификатора всегда есть цель. – coderMe
Ах, звучит, как говорит Селко – Strawberry