我们可以在没有密钥的情况下进行lucene查询并只提供值吗? 例如: 让我们在以下两个属性(城市和国家/地区)上创建索引 现在,我可以搜索“*:query”,而无需指定任何属性名称。
谢谢, 阿都
答案 0 :(得分:0)
您可以配置默认字段,但如果要使用单个查询字词搜索两个(或全部)数据,则可以创建一个新字段进行搜索,并添加所有数据以进行搜索领域。 所以现在你要添加:
city: mycity
country: mycountry
你可以添加另一个字段,称之为地址或文字,这些内容对你的用途有意义,所以我们有:
city: mycity
country: mycountry
address: mycity mycountry maybe even some other things too
我现在可以搜索城市或国家/地区的“地址”,或者按照相关性排序很好。
您需要确保'city'和'country'并存储(Field.Store.YES),以便您以后可以获取它们。 'address'仅用于搜索,因此请确保它已编入索引(Field.Index.ANALYZED),并且很可能未存储(Field.Store.NO)。您是否想要为城市和国家/地区编制索引取决于您,但在您希望仅搜索某个字词作为国家/地区的情况下,这可能不是一个坏主意。