У меня есть таблица, похожая на ниже
Таблица вопросов :
Qid Tags
--- ---------
1 SQL
1 DATABASE
1 ALGORITHM
2 ALGORITHM
2 TAGS
3 SQL
3 SYNTAX
3 DATABASE
Следующее
SELECT * FROM Question table WHERE TAGS='SQL'
отобразит:
Qid Tags
--- ----
1 SQL
2 SQL
3 SQL
Я ищу запрос, который будет отображать самый высокий связанный вопрос, основанный на похожих тегах.
Так что, если я посмотрю таблицу вопросов - Qid=1
. Результатом будет Qid 3, так как Qid 1 и Qid 3 имеют 2 одинаковых термина, но Qid 2 только как 1 тег, похожий на Qid 1. Если бы я посмотрел Qid 2, он вернул бы Qid 1, поскольку они разделяют 1 тег и Qid 2 и 3 не делятся тегами. И если бы я посмотрел Qid 3, он вернул бы Qid 1, так как у Qid 1 есть 2 тега, которые есть у Qid 3, но у Qid 2 нет тегов, которые есть у Qid 3.
Спасибо за любую помощь.