Re: How exclude empty fields?
: The issue I have is that some promotions are permanent so they don't have : an endDate set. : : I tried doing: : : ( +Promotion.endDate:[210100TOvariable containing yesterday's date] : || -Promotion.endDate:* ) 1) mixing prefix ops with "||" like this is most certainly not doing what you think... https://lucidworks.com/blog/why-not-and-or-and-not/ 2) combine that with Ahmet's point about needing a "MatchAllDocsQuery" to "select all docs" from which you can thin "exclude docs with an endDate" to give you the final results of "docs w/o an endDate" ... BooleanQuery( Should(NumericRangeQuery("endDate:[X TO Y]")) Should(BooleanQuery( Must(MatchAllDocsQuery()) MustNot(FieldValueQuery("endDate")) )) ) ...either that, or index a new boolean field "permenant" and then simplify your query to basically just be "endDate:[X TO Y] OR permentant:true" -Hoss http://www.lucidworks.com/ - To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org For additional commands, e-mail: java-user-h...@lucene.apache.org
Re: How exclude empty fields?
Hi, Match all docs query minus Promotion.endDate:[* TO *] +*:* -Promotion.endDate:[* TO *] Ahmet On Friday, November 11, 2016 5:59 PM, voidmindwrote: Hi, I have indexed content about Promotions with effectiveDate and endDate fields for when the promotions start and end. I want to query for expired promotions so I do have this criteria, which works fine: +Promotion.endDate:[210100TOvariable containing yesterday's date] The issue I have is that some promotions are permanent so they don't have an endDate set. I tried doing: ( +Promotion.endDate:[210100TOvariable containing yesterday's date] || -Promotion.endDate:* ) But it doesn't seem to work because the promotions with no endDate are in my results (empty endDate fields are not indexed apparently) How would I exclude content that doesn't have an endDate set? Thanks, Alexandre Leduc - To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org For additional commands, e-mail: java-user-h...@lucene.apache.org
How exclude empty fields?
Hi, I have indexed content about Promotions with effectiveDate and endDate fields for when the promotions start and end. I want to query for expired promotions so I do have this criteria, which works fine: +Promotion.endDate:[210100TOvariable containing yesterday's date] The issue I have is that some promotions are permanent so they don't have an endDate set. I tried doing: ( +Promotion.endDate:[210100TOvariable containing yesterday's date] || -Promotion.endDate:* ) But it doesn't seem to work because the promotions with no endDate are in my results (empty endDate fields are not indexed apparently) How would I exclude content that doesn't have an endDate set? Thanks, Alexandre Leduc