Sorry for the bad post title but I couldn't summarize this better.
It's better to use an example. Say I have this simple table with two text columns (I'm leaving the other columns out).
Id Text_1 Text_2
1 a a b
2 c a b
Now if I want to search for '"a" and not "b"', in my current implementation I'm getting record 1 back. I understand why this is, it's because the search condition is a match on column "Text_1", while for record 2 it's not a match on any column.
However, for the end user this may not be intuitive, as they probably mean to exclude record 1 as well most of the time.
So my question is, if I want to tell SQL Server to do the matching "across all columns" (meaning that if the "NOT" portion is found on ANY column, the record shouldn't match), is it possible?
EDIT: This is what my query would look like for this example:
SELECT Id, TextHits.RANK Rank, Text_1, Text_2 FROM simple_table
JOIN CONTAINSTABLE(simple_table, (Text_1, Text_2), '"a" and not "b"') TextHits
ON TextHits.[KEY] = simple_table.Id
ORDER BY Rank DESC
The actual query is a bit more complicated (more columns, more joins, etc) but this is the general idea :)
Thanks!