3

你好,

我是 Solr4.3 的新手,我不知道如何在 solr 中使用 JOIN 查询,在阅读了不同的文章后,我得到了一些解决方案,但仍然没有给出正确的结果。

我的要求:

这是我的 SQL 查询..SELECT MAX(A.LoadID) FROM QUESTINORE A ,LOAD B WHERE 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 AND {!join from=LoadID to=LoadID fromIndex=Load}Success:1 在 fq 字段中,然后我将 LoadID 放入 fl 字段中,然后单击执行查询后得到此 URL

4

1 回答 1

1

根据您的需求,您可以使用此网址查看是否有效。

http://localhost:3033/solr/QUESTINORE/select?q={!join from=LoadID+to=LoadID+fromIndex=LOAD}DataStreamSubType:34sdf&fq=SourceID:1
于 2013-05-28T09:03:32.167 回答