In Search Builder, if I search for contacts with a particular tag then the output returns the contacts with that tag.
If I then invert the search using 'Not In' or 'Not equals' it shows all the contacts who don't have that contact, but only from the overall set of contacts who actually have a tag. In other words, instead of searching the entire database for contacts who do not have that tag, it only searches all the contacts who have tags, and who in addition don't have that tag.
I believe the same applies to Groups.
This is very unintuitive behaviour; one would expect 'not in' or 'not equal' to apply to the entire database since everything else on all search screens does.
In fact, my SQL friends tell me that this is standard behaviour for searches across related tables; you should append an 'Or Null' query to any such searches if you want results returned from the entire database.
However, this would be too much for our non technical admin users to comprehend! Yet they regularly want to find people who don't have one particular tag or aren't in one particular group.
Is there a work around so that 'Not' searches of tags or groups can nevertheless search the entire database?
We're using 4.6.24 and Drupal 7.54. I'm hopeful of a clever work around to this! Thanks for your thoughts.