MySQL Wildcards

MySQL Wildcard Characters

A wildcard character is used to substitute one or more characters in a string.

Wildcard characters are used with the LIKE operator. The LIKE operator is used in a WHERE clause to search for a specified pattern in a column.

Wildcard Characters in MySQL

SymbolDescriptionExample
%Represents zero or more charactersbl% finds bl, black, blue, and blob
_Represents a single characterh_t finds hot, hat, and hit

The wildcards can also be used in combinations!

Here are some examples showing different LIKE operators with ‘%’ and ‘_’ wildcards:

LIKE OperatorDescription
WHERE CustomerName LIKE ‘a%’Finds any values that starts with “a”
WHERE CustomerName LIKE ‘%a’Finds any values that ends with “a”
WHERE CustomerName LIKE ‘%or%’Finds any values that have “or” in any position
WHERE CustomerName LIKE ‘_r%’Finds any values that have “r” in the second position
WHERE CustomerName LIKE ‘a_%_%’Finds any values that starts with “a” and are at least 3 characters in length
WHERE ContactName LIKE ‘a%o’Finds any values that starts with “a” and ends with “o”

Demo Database

The table below shows the complete “Customers” table from the Northwind sample database:

CustomerIDCustomerNameContactNameAddressCityPostalCodeCountry
1Alfreds FutterkisteMaria AndersObere Str. 57Berlin12209Germany
2Ana Trujillo Emparedados y heladosAna TrujilloAvda. de la Constitución 2222México D.F.05021Mexico
3Antonio Moreno TaqueríaAntonio MorenoMataderos 2312México D.F.05023Mexico
4Around the HornThomas Hardy120 Hanover Sq.LondonWA1 1DPUK
5Berglunds snabbköpChristina BerglundBerguvsvägen 8LuleåS-958 22Sweden
6Blauer See DelikatessenHanna MoosForsterstr. 57Mannheim68306Germany
7Blondel père et filsFrédérique Citeaux24, place KléberStrasbourg67000France
8Bólido Comidas preparadasMartín SommerC/ Araquil, 67Madrid28023Spain
9Bon app’Laurence Lebihans12, rue des BouchersMarseille13008France
10Bottom-Dollar MarketseElizabeth Lincoln23 Tsawassen Blvd.TsawassenT2F 8M4Canada

Using the % Wildcard

The following SQL statement selects all customers with a City starting with “ber”:

Example

SELECT * FROM Customers
WHERE City LIKE 'ber%'; 

The following SQL statement selects all customers with a City containing the pattern “es”: 

Example

 SELECT * FROM Customers
WHERE City LIKE '%es%'; 

Using the _ Wildcard

The following SQL statement selects all customers with a City starting with any character, followed by “ondon”:

Example

SELECT * FROM Customers
WHERE City LIKE '_ondon';

The following SQL statement selects all customers with a City starting with “L”, followed by any character, followed by “n”, followed by any character, followed by “on”:

Example

SELECT * FROM Customers
WHERE City LIKE 'L_n_on';