【发布时间】:2010-10-13 03:34:49
【问题描述】:
虽然完全是新手,但这个问题可能很幼稚。 我想根据索引搜索我的索引。所以我尝试创建一个只有一个索引名称的文档,然后想要搜索该特定字段。
我正在尝试找出是否可以在不实际删除 lucene 中的文档的情况下更新文档的字段。
谢谢。
【问题讨论】:
标签: lucene
虽然完全是新手,但这个问题可能很幼稚。 我想根据索引搜索我的索引。所以我尝试创建一个只有一个索引名称的文档,然后想要搜索该特定字段。
我正在尝试找出是否可以在不实际删除 lucene 中的文档的情况下更新文档的字段。
谢谢。
【问题讨论】:
标签: lucene
您可以使用冒号语法搜索特定字段中的单词,即name:john。
但是因为很多索引只有一个字段是你要搜索的,所以有一个默认字段,以防你只搜索john。您可以设置实例化 QueryParser 时的字段
QueryParser parser = new QueryParser(Version.LUCENE_30, "name", anAnalyzer);
Query q = parser.parse("john");
如果您想以编程方式创建查询而不是解析用户输入的查询字符串,那么您还必须明确指定字段,例如:
Query q = new TermQuery(new Term("name", "john"));
链接:Using fields in Lucene queries (Lucene Query Syntax) | QueryParser Javadoc | TermQuery Javadoc
【讨论】:
我正在尝试找出是否可以在不实际删除 lucene 文档的情况下更新文档的字段。
我不明白第一个问题,但是您不能在 Lucene 中更新文档。您必须删除并重新插入。
【讨论】: