Solr查询执行



像下面这样的查询将如何执行,按哪个顺序执行

我知道当这个查询被执行时,fieldList中提到的字段将被返回。我不明白的是如何"samplestring1"one_answers"samplestring2"将得到搜索与查询字段指定

我想我将能够理解搜索是如何发生的,如果这可以在SQL中说明(只是为了了解幕后发生了什么)

查询如下。请看看它,让我知道这是如何工作的内部。query=samplestring1 AND samplestring2defType: edismaxqueryFields: Exact_Field1^1.0 Exact_Field2^0.9 Field1^0.8 Field2^0.7fieldList: Column1, Column2resultRows: 10startRow: 0

p。S samplestring1和samplestring2是查询

中的一些测试字符串

字段

Schema示例
<fieldType name="sampletype1" class="solr.TextField" positionIncrementGap="100">
    <analyzer type="index">
        <tokenizer class="solr.KeywordTokenizerFactory"/>
        <filter class="solr.LowerCaseFilterFactory"/>
        <filter class="solr.NGramFilterFactory" minGramSize="5" maxGramSize="10"/>
    </analyzer>
    <analyzer type="query">
        <tokenizer class="solr.KeywordTokenizerFactory"/>
        <filter class="solr.LowerCaseFilterFactory"/>
    </analyzer>
</fieldType>
<fieldtype name="sampletype2" class="solr.TextField" sortMissingLast="true" omitNorms="true">   
    <analyzer>
        <tokenizer class="solr.KeywordTokenizerFactory"/>
        <filter class="solr.LowerCaseFilterFactory"/>
    </analyzer>
</fieldtype>
<field name="Field1" compressed="true" type="sampletype1" multiValued="false" indexed="true" stored="true" required="true" omitNorms="true"/>
<field name="Field2" compressed="true" type="sampletype1" multiValued="false" indexed="true" stored="true" required="true" omitNorms="true"/>
<field name="Exact_Field1" omitPositions="true" termVectors="false" omitTermFreqAndPositions="true" compressed="true" type="sampletype2" multiValued="false" indexed="true" stored="true" required="true" omitNorms="true"/>
<field name="Exact_Field2" omitPositions="true" termVectors="false" omitTermFreqAndPositions="true" compressed="true" type="sampletype2" multiValued="false" indexed="true" stored="true" required="false" omitNorms="true"/>
<copyField source="Field1" dest="Exact_Field1"/>
<copyField source="Field2" dest="Exact_Field2"/>

SQL和solr是非常不同的。我建议您做的是将&debugQuery=on参数添加到您的查询url中,这将在输出中为您提供ParsedQuery,因此您可以知道它如何在内部生成已解析的查询。

相关内容

  • 没有找到相关文章

最新更新