编程点滴.LUCENE保存检索表达式遇到的问题
时间:2010-12-27 来源:寒 刚入门
doc.Add(new NumericField("year", Field.Store.NO, true).SetIntValue(Convert.ToInt32(Year)));
检索的时候也要用数字范围检索
Query q=NumericRangeQuery.NewIntRange("year", 1995, 2005, true, true);
这个时候q的检索表达式是"year:[1995 TO 2005]".
这样看起来没啥问题,但是把它ToString()保存后,再取出生成Query
new QueryParser("", analyzer).Parse(q)
查看表达式还是"year:[1995 TO 2005]".
但数据已经查不出来了.
原来这种方法默认是使用TermRangeQuery进行检索的.
现在我只能在创建索引时继续使用文本类型保存数据,只在排序的时候使用数字类型排序.
希望高手提出解决方案.
相关阅读 更多 +
排行榜 更多 +