2014-01-15 2 views
0

Я перепутались с синтаксисом д запроса:Apach solr. Синтаксис запросов объяснение

  1. , если я пишу q=*:* - Я вижу 2 результаты.

  2. Если я пропускаю д - я не вижу ничего

  3. , если я пишу q=price:* - см 2 результаты

  4. если я пишу q=price - 0 результатов

обновления

  1. q=price:0 - 1 результат

Можете ли вы объяснить различия между этими запросами?

особенно я хочу понять, что это означает 4-й вариант?

проиндексированные документы:

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&#xE9;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> 

ответ

1

Если вы не даете значение его считают значение по умолчанию. Как и в вашем четвертом запросе

q=price means it searches the default searchable field having value "price" 

Вот почему вы получаете 0 результат, так как цена не равна 0.

+0

* q = цена: 0 * - 1 результат – gstackoverflow

+0

Проверьте свой solrconfig.xml для поля поиска по умолчанию. В этом поле solr производит запрос и значение которого - «цена». – Rahul

+0

Какой тег нужно найти? – gstackoverflow

Смежные вопросы