我搞乱了 q 查询的语法:
如果我写
q=*:*
- 我会看到 2 个结果。如果我跳过 q - 我什么也没看到
如果我写
q=price:*
- 看到 2 个结果如果我写
q=price
- 0 个结果
更新
q=price:0
- 1 个结果
您能解释一下这些查询之间的差异吗?
特别是我想了解第四个变体是什么意思?
索引文档:
add><doc>
<field name="id">3007WFP</field>
<field name="name">Dell Widescreen UltraSharp 3007WFP</field>
<field name="manu">Dell, Inc.</field>
<!-- Join -->
<field name="manu_id_s">dell</field>
<field name="cat">electronics</field>
<field name="cat">monitor</field>
<field name="features">30" TFT active matrix LCD, 2560 x 1600, .25mm dot pitch, 700:1 contrast</field>
<field name="includes">USB cable</field>
<field name="weight">401.6</field>
<field name="price">2199</field>
<field name="popularity">6</field>
<field name="inStock">true</field>
<!-- Buffalo store -->
<field name="store">43.17614,-90.57341</field>
<field name="cat">XXX</field>
</doc></add>
<小时/>
<add>
<doc>
<field name="id">SOLR1000</field>
<field name="name">Solr, the Enterprise Search Server</field>
<field name="manu">Apache Software Foundation</field>
<field name="cat">software</field>
<field name="cat">search</field>
<field name="cat">XXX</field>
<field name="features">Advanced Full-Text Search Capabilities using Lucene</field>
<field name="features">Optimized for High Volume Web Traffic</field>
<field name="features">Standards Based Open Interfaces - XML and HTTP</field>
<field name="features">Comprehensive HTML Administration Interfaces</field>
<field name="features">Scalability - Efficient Replication to other Solr Search Servers</field>
<field name="features">Flexible and Adaptable with XML configuration and Schema</field>
<field name="features">Good unicode support: héllo (hello with an accent over the e)</field>
<field name="price">0</field>
<field name="popularity">10</field>
<field name="inStock">true</field>
<field name="incubationdate_dt">2006-01-17T00:00:00.000Z</field>
</doc>
</add>
最佳答案
如果您没有给出该值,则它会考虑默认值。正如您的第四个查询
q=price means it searches the default searchable field having value "price"
这就是为什么您得到 0 结果的原因,因为没有价格是 0 值的。
关于java - Apache solr.查询语法解释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21138996/