Thank you all for helping and updating the doc. As always, it is greatly appreciated.
Steve On Thu, Jun 4, 2015 at 1:53 PM, Chris Hostetter <hossman_luc...@fucit.org> wrote: > > : What about at query time? If I index my Boolean and it has one of the > : variations of "t", "T" or "1", what should my query be to get a hit on > : "true"? q=MyBoolField:<what> ? What should the value of <what> be when > I > : want to check if the field has a "true" and when I need to check if it > has > : a "false"? > > the string representations are parsed into the logical concepts -- it > doesn't matter if one doc was added with a value of "true" and another doc > was indexed with a value of "T" in the index they both have a true value. > > likewise at query time it doesn't matter if you query for "true" or "T" - > they are both going to find all docs that have a true value, and querying > for "F" or "false" or "BOGUS" are going to find you all docs with a false > value. > > where things get interesting is is when you deal with documents that do > not have a value in the field at all -- searching for something like > this... > > q=-MyBoolField:true > > ...won't just return all the docs with a false value, it will also return > all docs w/o any value. > > if you want to find all documents that don't have any value, you can > search for this... > > q=-MyBoolField:* > > note that the "*" is a query parser feature, so it causes the query parser > to do a "docs with value in this field" query w/o ever asking the > BoolField to "parse" the input string as a true/false value. > > > > -Hoss > http://www.lucidworks.com/ >