簡體   English   中英

Apache SOLR和字符串范圍搜索

[英]Apache SOLR and string range search

可以按字段類型“字符串”的范圍進行搜索嗎?

fieldString:[A TO B]

要么

fieldString:[U-00* TO U-009]

表示使用所有字符序列在A到B之間或U-009之間的所有U-000的字段給出結果

現在我得到一些值從U-001,U-002 ...到U-009的字段

I try: fieldString:[U-00* TO U-009] but this dont work
fieldString:/U-00[0-9]/ and also the same non results

對的,這是可能的。 但是結果可能取決於您如何分析索引中的字符串。 如果字符串只是A或B,則沒有問題; 但是在進行某些標記時,您可能會得到所有包含A或B的結果。

schema.xml:
<types>
    <fieldType name="string" class="solr.StrField" sortMissingLast="true" omitNorms="true" />
    ...
</types>

<fields>
    ...
    <field name="isbn" type="string" indexed="true" stored="true" multiValued="false" />
    ...
</fields>

solrconfig.xml:
<requestHandler class="solr.SearchHandler" name="standard">
</requestHandler>

如您所見,沒有什么特別的。 字符串類型不被任何過濾器處理,而是按原樣存儲。 我使用標准查詢解析器。 在此配置中,您的示例有效

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM