如何使用与rdbms子查询类似的Solr子查询?

tgabmvqs  于 2022-11-23  发布在  Solr
关注(0)|答案(2)|浏览(198)

我需要在Solr中运行一个包含另一个查询作为主查询项的查询!
RDBMS中的SQL语句如下:

select name from movie
where movie.writer in (
    select director from movie where producer = 'XXX'
)

solr 有什么办法吗

vulvrdjw

vulvrdjw1#

解决了。
这可以在Solr中使用“join”。
下面是我所回答的示例的解决方案:

fl=name&  
q={!join from=writer to=director}+producer:XXX

还可以添加筛选查询。此筛选将影响联接和查询的结果。
多亏了拉姆西。

carvr3hs

carvr3hs2#

您可以尝试过滤,类似于以下内容..

q=movie:name
fq=(writer:writer_name AND producer:Producer_name)

而且你放入Solr索引中的数据是平面的或者是非规范化的。2所以把suquery字段的值放在Solr查询的AND部分。

q=(movie:name AND writer:Writer_name AND producer:Producer_name)

相关问题