Say we have a table against which a number of different queries can be executed and each query has its own combination of predicates.
So, for example, if we have a table with columns A, B, C, etc we may have a query that filters on columns A and B but not C, a second query that filters on A and C but not B, and so on.
Does it make sense to have a non-clustered index that has as its key columns every column in the table (or tables) that can be a predicate?
To my mind, I'd have thought it is better to have a non-clustered index for each query with the predicates for that query as the key columns.
Any advice on this would be great!