你好
我是Solr4.3的新手,我不知道如何在solr中使用JOIN查询,在阅读了不同的文章之后,我得到了一些解决方案,但仍然无法给出正确的结果。
我的要求:
这是我的SQL查询。从QUESTINORE A中选择MAX(A.LoadID),在B中加载A.SourceID = 1 AND A.DataStreamSubType = 34sdf AND A.LoadID = B.LoadID AND B.Success ='1'
,
我必须将其转换为Solr查询,我尝试了自己,但未获得正确的结果,
我从solr admin获得的第一个核心QUESTINORE整体结果是,
<doc>
<str name="ID"> Muthu56 </str>
<long name="SourceID">1</long>
<long name="LoadID">381</long>
<str name="DataStreamType">sdfsfd</str>
<str name="DataStreamSubType">34sdf</str>
<long name="EventID">2</long>
</doc>
我的第二个LOAD核心结果是,
<doc>
<long name="LoadID">381</long>
<long name="SourceID">1</long>
<str name="DataStreamType">QUESTIONNAIRE</str>
<long name="Success">1</long>
<str name="_version_">1435736380162441216</str></doc>
</doc>
这是我的solr查询,我没有从查询中得到结果
在solr admin中,我将其放在SourceID:1 AND DataStreamSubType:34sdf中,并将{!join from = LoadID to = LoadID fromIndex = Load}成功:1放入fq字段中,并将LoadID放入fl字段中,然后在单击执行查询后得到此URL。
最佳答案
根据您的需求,您可以使用此网址查看是否有效。
http://localhost:3033/solr/QUESTINORE/select?q={!join from=LoadID+to=LoadID+fromIndex=LOAD}DataStreamSubType:34sdf&fq=SourceID:1
关于join - 在Solr中加入多核,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16786209/