У меня есть оператор, который ранжирует элементы на основе количества общих тегов и ораторов на основе связывания таблиц, но я хочу, чтобы он также мог извлекать информацию talk_title и talk_brief из основного tbl_talks, которого на самом деле нет в запросе прямо сейчас (используются только таблицы ссылок).
в основном таблицы связывания имеют talk_id и tag_id или talk_id и speaker_id.
Я попробовал несколько способов попытаться ВЛЕВО СОЕДИНИТЬСЯ или добавить tbl_talks в парные SELECT, к которым применяется объединение, но безуспешно. Мне нужно связать как tbl_linking_talk_tag.talk_id, так и tbl_linking_speakers_talk с tbl_talks.talk_id и, с этим, взять talk_title и talk_brief из tbl_talks
SELECT talk_id, count(*) AS common_term_count FROM
(
SELECT talk_id FROM tbl_linking_talk_tag WHERE tag_id IN
(SELECT tag_id FROM tbl_linking_talk_tag WHERE talk_id = 1)
UNION ALL
SELECT talk_id FROM tbl_linking_speakers_talk WHERE speaker_id IN
(SELECT speaker_id FROM tbl_linking_speakers_talk WHERE talk_id = 1)
) AS accumulator_table
WHERE talk_id != 1
GROUP BY talk_id
ORDER BY common_term_count DESC