Summary: you will learn how to use MySQL WHERE clause to filter rows returned from the SELECT statement.
If you use the SELECT statement to query the data from a table without the
WHERE clause, you will get all rows in the table, which sometimes brings more data than you need. The
WHERE clause allows you to specify exact rows to select based on given conditions e.g., find all customers in the U.S.
The following query selects all customers whose country is U.S. from the
customers table. We use the
WHERE clause to filter the customers. In the
WHERE clause, we compare the values of the
country column with the
USA literal string.
SELECT customerName, city FROM customers WHERE country = 'USA';
You can form a simple condition like the query above, or a very complex one that combines multiple expressions with logical operators such as
OR. For example, to find all customers in the U.S . and also in the New York city, you use the following query:
SELECT customerName, city FROM customers WHERE country = 'USA' AND city = 'NYC';
You can test the condition for not only equality but also inequality. For example, to find all customers whose credit limit is greater than 200.000 USD, you use the following query:
SELECT customerName, creditlimit FROM customers WHERE creditlimit > 200000;
There are several useful operators that you can use in the WHERE clause to form more practical queries such as:
- BETWEEN selects values within a range of values.
- LIKE matches value based on pattern matching.
- IN specifies if the value matches any value in a list.
- IS NULL checks if the value is
In this tutorial, we’ve shown you how to use MySQL WHERE clause to filter records based on conditions.