Join результатов фасетной выборки

~
На сайте с 04.07.2006
Offline
82
769

Привет!

Пусть у нас имеется СУБД + фасетный поиск, например - Apache Solr. Как лучше делать join результатов запроса в фасетный поиск? Приведу пример. В простейшем случае результат запроса - это список id документов. Тогда SQL-запрос на выборку этих документов будет выглядеть примерно так:

select ... from document where id in (список id через запятую);

А как быть, когда внутри метадаты документа, сливаемой в фасетный поиск, идут внешние ключи других таблиц? Ну например - color_id. Если бы color_id был отдельным полем таблицы - то было бы ясно. А если на уровне СУБД его не видно, то айдишники придут в виде результата выборки из фасетного поиска. То есть, на выходе мы получим список пар (id, color_id), и вот как теперь по-человечески построить по этим данным SQL select - не совсем ясно. Есть ли тут какое-то устоявшееся решение?

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий