LIKE - Matching a Pattern in a Character String in SQL Server

Q

What To Perform Pattern Match with the LIKE Operator in SQL Server Transact-SQL?

✍: FYIcenter.com

A

Pattern match is a very important operation for search records base on character string columns. SQL Server 2005 offers the LIKE operator to perform pattern match operations in two formats:

target_string LIKE pattern
-- Returns TRUE 
   if the target string matches the pattern

target_string NOT LIKE pattern
-- Returns TRUE 
   if the target string does not match the pattern

Pattern match is a powerful operation. But you need to remember several rules:

  • Pattern may contain predefined wildcard characters, similar to Unix Regular Expressions. But they are not the same.
  • '%' is a wildcard character that matches any string of zero or more characters.
  • '_' is a wildcard character that matches any single character.
  • '_' is a wildcard character that matches any single character.
  • '[abc]' is a wildcard character that matches any character listed inside the brackets.
  • '[a-c]' is a wildcard character that matches any character in the range defined in the brackets.
  • '[^abc]' is a wildcard character that matches any character not listed inside the brackets.
  • '[^a-c]' is a wildcard character that matches any character not in the range defined in the brackets.

Here is a simple example of LIKE operator:

SELECT CASE WHEN 
      'FYIcenter.com' LIKE 'FYI%'
   THEN 'Pattern matched.'
   ELSE 'Pattern not matched.'
   END;
GO
Pattern matched.

 

Boolean Values and Logical Operations in SQL Server Transact-SQL

⇒⇒SQL Server Transact-SQL Tutorials

2017-01-21, 222👍, 0💬