The Predicate Clause

I have mentioned that parts of a SELECT statement to do queries. Certain pieces of it are called predicates. These include ON, WHERE and HAVING. Some categories of predicates are Search Arguments. Those can take advantage of indexes for better performance. This can only happen if the predicate does not use functions like COALESCE or ISNULL. If it does, it is not a Search Argument and the indexes cannot be used.
You can have multiple clauses in a predicate. They are connected by AND or OR keywords. The AND has a higher precedence than OR. That means in a statement with multiple AND/OR combinations, the AND operations are evaluated first.
When doing checks on character (string) values, you can use the LIKE operator. The LIKE works with a string with special values such as the % which represents any characters. The underscore represents any single character. A list of characters in braces means any one character from that list. And if you put a caret (^) in front of the list, it means any character that is not in that list.