Hi, Solr team
I am using Solr 8.11, and I want to ask some questions about NOT query.

My original query is:
network_id:379619 AND (object_type:("ssp_deal" OR "ssp_buyer_group" OR
"ssp_buyer")) AND (network_id:("379619"))  AND  (*:* NOT user_id: 0)
And I opened the debugQuery, the log is:
    "rawquerystring":"network_id:379619 AND (object_type:(\"ssp_deal\" OR
\"ssp_buyer_group\" OR \"ssp_buyer\")) AND (network_id:(\"379619\"))  AND
 (*:* NOT user_id: 0)",
    "querystring":"network_id:379619 AND (object_type:(\"ssp_deal\" OR
\"ssp_buyer_group\" OR \"ssp_buyer\")) AND (network_id:(\"379619\"))  AND
 (*:* NOT user_id: 0)",
    "parsedquery":"+network_id:379619 +(object_type:ssp_deal
object_type:ssp_buyer_group object_type:ssp_buyer) +network_id:379619
+(MatchAllDocsQuery(*:*) -user_id:0)",


Then I changed the query to:
network_id:379619 AND (object_type:("ssp_deal" OR "ssp_buyer_group" OR
"ssp_buyer")) AND (network_id:("379619"))  AND NOT user_id: 0
And the debug log is:
    "rawquerystring":"network_id:379619 AND (object_type:(\"ssp_deal\" OR
\"ssp_buyer_group\" OR \"ssp_buyer\")) AND (network_id:(\"379619\"))  AND
 NOT user_id: 0",
    "querystring":"network_id:379619 AND (object_type:(\"ssp_deal\" OR
\"ssp_buyer_group\" OR \"ssp_buyer\")) AND (network_id:(\"379619\"))  AND
 NOT user_id: 0",
    "parsedquery":"+network_id:379619 +(object_type:ssp_deal
object_type:ssp_buyer_group object_type:ssp_buyer) +network_id:379619
-user_id:0",

And the difference of queries are  (*:* NOT user_id: 0)  and NOT user_id: 0
the parsedquery are :  +(MatchAllDocsQuery(*:*) -user_id:0)   and
-user_id:0.
And the results of both queries are the same.

Then I test, the query which used (NOT user_id: 0) took less time than used
(*:* NOT user_id: 0)
So I want to ask, I hope you can analyze theoretically which query takes
less time to select?

Hope to get your response, thanks!

Reply via email to