SQL OR Operador
SQL OR Operador
La cláusula WHERE
puede contener uno o más operadores OR
.
El operador OR
se utiliza para filtrar registros en función de más de una condición, como si desea devolver todos los clientes de Germany pero también los de Spain:
Ejemplo
Seleccione a todos los clientes de Alemania o España:
SELECT *
FROM Customers
WHERE Country = 'Germany' OR Country = 'Spain';
Try it Yourself »
Sintaxis
SELECT column1, column2, ...
FROM table_name
WHERE condition1 OR condition2 OR condition3 ...;
OR vs AND
El operador OR
muestra un registro si alguna de las condiciones es TRUE (VERDADERA).
El operador AND
muestra un registro si todas las condiciones son TRUE (VERDADERA).
Base de datos de demostración
A continuación se muestra una selección de la tabla Customers utilizada en los ejemplos:
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 |
Al menos una condición debe ser verdad
La siguiente declaración SQL selecciona todos los campos de Clientes donde City
es "Berlin", CustomerName
comienza con la letra "G" o Country
es "Norway":
Ejemplo
SELECT * FROM Customers
WHERE City = 'Berlin' OR CustomerName LIKE 'G%' OR Country = 'Norway';
Try it Yourself »
Combinando AND y OR
Puede combinar los operadores AND
y OR
.
La siguiente sentencia SQL selecciona todos los clientes de España que comienzan con una "G" o una "R".
Asegúrese de utilizar paréntesis para obtener el resultado correcto.
Ejemplo
Seleccione todos los clientes españoles que comiencen con "G" o "R":
SELECT * FROM Customers
WHERE Country = 'Spain' AND (CustomerName LIKE 'G%' OR CustomerName LIKE 'R%');
Try it Yourself »
Sin paréntesis, la sentencia select devolverá todos los clientes de España que comiencen con "G", más todos los clientes que comiencen con "R", independientemente del valor del país:
Ejemplo
Seleccione todos los clientes que:
sean de Spain y comiencen con "G", o
comience con la letra "R":
SELECT * FROM Customers
WHERE Country = 'Spain' AND CustomerName LIKE 'G%' OR CustomerName LIKE 'R%';
Try it Yourself »
W3Schools SQL Videotutorial. Operador OR
Este video es una introducción al operador OR en SQL.
¡Forma parte de una serie de videotutoriales para aprender SQL para principiantes!