SOLUTION:
I will post my solution and explain what was the problem and I hope that this post can help someone in the future.
As we talk in the small comments the problem, was that I was sending a non existing taxonomy by error and this was causing the AND (0=1).
To fix the whole problem I created a add_rewrite_rule
for each case when I have parameter or not like the following example:
add_rewrite_rule(
'^cerca/comarca/([a-zA-Z0-9-+]+)/?',
'index.php?s=&category_name=$matches[1]',
'top'
);
add_rewrite_rule(
'^cerca/municipi/([a-zA-Z0-9-+]+)/?',
'index.php?s=&municipi=$matches[1]',
'top'
);
add_rewrite_rule(
'^cerca/provincia/([a-zA-Z0-9-+]+)/?',
'index.php?s=&provincia=$matches[1]',
'top'
);
add_rewrite_rule(
'^cerca/provincia/([a-zA-Z0-9-+]+)/comarca/([a-zA-Z0-9-+]+)/municipi/([a-zA-Z0-9-+]+)/?',
'index.php?s=&provincia=$matches[1]&category_name=$matches[2]&municipi=$matches[3]',
'top'
);
….
Thanks to @janh2 for all the helpful comments.