: I've been using q.alt=-*:* because *:* is said to be the most efficient way of : querying for every document. is -*:* the most efficient way of querying for : no document?
I don't think so ... solr internally reverse pure negative queries so that they are combined with a matchalldocsquery that is positive ... which means your final query would look like (*:* -*:*) ... there's no toehr query optimization that would happen, so that query sould produce a DisjunctionScorer that can't ever "skipTo" past any docs. once it gets cached it shouldn't matter -- but hey, you asked. The most efficient way i can think of (besides a new Query class like John suggested) is along the lines of what Erik mentioned... <fieldtype name="ignored" stored="false" indexed="false" multiValued="true" class="solr.StrField" /> <field name="match_nothing" type="ignored"/> ... q.alt=match_nothing:0 ...it has to be a real field or the query parsing code will freak out, but making it indexed=false will ensure that there will *never* be any terms in that field so the term "0" will never be there so the entire query process will short circut out almost immediately (it won't even construct a Scorer let alone iterate over any docs) -Hoss