Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Search lucene搜索表达式(查询解析器语法)能否搜索数字字段?_Search_Search Engine_Lucene.net_Lucene - Fatal编程技术网

Search lucene搜索表达式(查询解析器语法)能否搜索数字字段?

Search lucene搜索表达式(查询解析器语法)能否搜索数字字段?,search,search-engine,lucene.net,lucene,Search,Search Engine,Lucene.net,Lucene,我在lucene索引中使用NumericField编写一个Integer: doc.add( new NumericField("id",Integer.MAX_VALUE,Field.Store.YES,true) .setIntValue(123) ); 现在我有一个问题,我如何通过id字段(NumericField)编写搜索表达式 我试过: id:123和id:intToPrefixCoded(123) 但没有回报 参考资料: 这不起作用,因为数字字段的内部

我在lucene索引中使用
NumericField
编写一个
Integer

doc.add(
    new NumericField("id",Integer.MAX_VALUE,Field.Store.YES,true)
        .setIntValue(123)
);
现在我有一个问题,我如何通过id字段(NumericField)编写搜索表达式

我试过:

id:123
id:intToPrefixCoded(123)

但没有回报

参考资料:


这不起作用,因为数字字段的内部表示形式与其文本表示形式不同。您应该手动构造数字查询或扩展Lucene。您所需要做的就是扩展
new*Query
(Term,Range,…)方法,并对字段名进行if/else测试,以了解您应该创建数字查询还是常规查询

有关更多信息,请参阅。

可能的重复: