Curriculum
Course: SQL
Login

Curriculum

SQL

SQL References

0/80

MySQL Functions

0/139

SQL Server Functions

0/84

SQL Quick Ref

0/1
Text lesson

SQL OR

The SQL OR Operator

The WHERE clause may include one or more OR operators.

The OR operator is utilized to filter records based on multiple conditions, such as returning all customers from either Germany or Spain.

Example

Retrieve all customers from either Germany or Spain.

SELECT *
FROM Customers
WHERE Country = ‘Germany’ OR Country = ‘Spain’;

Syntax

SELECT column1, column2, ...
FROM table_name
WHERE condition1 OR condition2 OR condition3 ...;

OR vs AND

The OR operator displays a record if any of the conditions are TRUE.

The AND operator displays a record if all the conditions are TRUE.

Demo Database

Here is a excerpt from the Customers table utilized in the examples:

CustomerID

CustomerName

ContactName

Address

City

PostalCode

Country

1

Alfreds Futterkiste

Maria Anders

Obere Str. 57

Berlin

12209

Germany

2

Ana Trujillo Emparedados y helados

Ana Trujillo

Avda. de la Constitución 2222

México D.F.

05021

Mexico

3

Antonio Moreno Taquería

Antonio Moreno

Mataderos 2312

México D.F.

05023

Mexico

4

Around the Horn

Thomas Hardy

120 Hanover Sq.

London

WA1 1DP

UK

5

Berglunds snabbköp

Christina Berglund

Berguvsvägen 8

Luleå

S-958 22

Sweden

At Least One Condition Must Be True

The following SQL statement retrieves all fields from the Customers table where either the City is “Berlin”, the CustomerName starts with the letter “G”, or the Country is “Norway”.

Example

SELECT * FROM Customers
WHERE City = ‘Berlin’ OR CustomerName LIKE ‘G%’ OR Country = ‘Norway’

Combining AND and OR

Combining the AND and OR operators is possible.
The following SQL statement selects all customers from Spain whose names start with either “G” or “R”.
Ensure to use parentheses for the correct result.

Example

Retrieve all Spanish customers whose names begin with either “G” or “R”.

SELECT * FROM Customers
WHERE Country = ‘Spain’ AND (CustomerName LIKE ‘G%’ OR CustomerName LIKE ‘R%’); 

Without parentheses, the select statement will return all customers from Spain whose names start with “G”, as well as all customers whose names start with “R”, irrespective of their country value.

Example

Retrieve all customers who either:
Are from Spain and their names begin with either “G”, or
Their names start with the letter “R”.

SELECT * FROM Customers
WHERE Country = ‘Spain’ AND CustomerName LIKE ‘G%’ OR CustomerName LIKE ‘R%’