To the best of my knowledge you are spot on with everything you say, except that the component to parse the strings doesn't exist. I suspect that a contribution to add that to StandardQueryParser might well be accepted.
-- Ian. On Wed, Feb 11, 2015 at 4:21 AM, Jon Stewart <j...@lightboxtechnologies.com> wrote: > Hello, > > I've done a lot of googling, but haven't stumbled upon the magic > answer: how does one use StandardQueryParser with numeric fields > representing timestamps, to allow for range queries? > > When indexing, my timestamp fields are ISO 8601 strings. I'm parsing > them and then storing the milliseconds epoch time as a long, i.e.: > > doc.add(new LongField("created", ts.getMillis(), Field.Store.NO)); > > From reading around, this seems to be the preferred method to index a > timestamp (makes sense). However, how can you get StandardQueryParser > to handle a query like "created:[2010-01-01 TO 2014-12-31]"? > > For other numeric fields, StandardQueryParser.setNumericConfigMap() is > working just fine for me. It would seem that the "created" field would > have to be part of this map in order to execute the range query > properly, but that there must also be a component to parse the > date/time strings in the query and convert them to long values, right? > > Thanks in advance, > > Jon > > --------------------------------------------------------------------- > To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org > For additional commands, e-mail: java-user-h...@lucene.apache.org > --------------------------------------------------------------------- To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org For additional commands, e-mail: java-user-h...@lucene.apache.org