SQL OR: consultas de datos con varias condiciones
El operador SQL OR
optimiza la búsqueda en conjuntos de datos al coincidir al menos con una de varias condiciones definidas. SQL OR
se puede combinar también con otros operadores lógicos como AND
o NOT
para mejorar y acelerar las consultas complejas.
¿Qué es el operador SQL OR
?
Cuando se trata de buscar información relevante, SQL AND, SQL NOT y SQL OR
son los operadores de SQL más importantes. Mientras que AND
encuentra datos que cumplen varias condiciones y NOT
define criterios de exclusión, SQL OR
amplía el conjunto de resultados. Por ello, tienes que definir varias condiciones de búsqueda cuyos resultados deben cumplir al menos un criterio. La ventaja es que estarás filtrando resultados relevantes que no tienen por qué cumplir todos los criterios.
Al formular con OR
una condición de búsqueda, el operador suele utilizarse con SQL SELECT y SQL WHERE para concretar conjuntos de datos, columnas y condiciones de búsqueda relevantes. Para realizar una consulta aún más precisa, OR
se puede combinar con otros operadores lógicos como AND
y NOT
o con otros operadores de comparación como =
.
SQL OR
, AND
y NOT
de un vistazo
Los operadores SQL OR
, AND
y NOT
cuentan con las siguientes diferencias:
SQL OR |
SQL AND |
SQL NOT |
---|---|---|
Filtra conjuntos de datos que cumplen al menos una de las condiciones | Tiene en cuenta solamente los datos que cumplen todas las condiciones | Ignora información que no cumple una condición determinada |
Amplía el alcance de la búsqueda a varias informaciones diferentes | Limita la búsqueda a una combinación de condiciones coincidentes | Ignora información irrelevante mediante criterios de exclusión |
Puedes iniciarte rápidamente en el lenguaje de programación y bases de datos SQL, incluso si no tienes conocimientos previos. En nuestra introducción a SQL con ejemplos puedes aprender los conceptos básicos.
La sintaxis del operador OR
El número de condiciones que definas para las consultas de datos puede comprender dos o más condiciones. Este es el aspecto de la sintaxis básica de OR
:
SELECT *
FROM tabla
WHERE condición1 OR condición2 OR …
sqlSe han utilizado los siguientes parámetros:
SELECT
: mediante claves primarias o foráneas selecciona las columnas en las que quieres consultar datos. Mediante un asterisco*
, en lugar del nombre de la columna, se busca en todo el conjunto de datos.FROM
: define la tabla que se utiliza en tu consulta.WHERE
: mediante operadores y otros parámetros, define condiciones de búsqueda con las que se limita la consulta.OR
: se utiliza como operador lógico combinado con SQLWHERE
para determinar criterios de búsqueda que los resultados deben o no cumplir.
Para limitar la consulta, se puede combinar con AND
o NOT
.
SQL OR
combinado con AND
Si se combina con AND
, debe aplicarse al menos uno de los criterios de búsqueda OR
, mientras que ambas condiciones de búsqueda OR
deben cumplir la condición AND
.
SELECT *
FROM tabla
WHERE (condición1 OR condición2) AND condición 3
sqlSQL OR
combinado con SQL NOT
Si se combina con NOT
, se pueden excluir los datos que no cumplan al menos uno de los criterios de búsqueda definidos**.
SELECT *
FROM tabla
WHERE NOT (condición1 OR condición2)
sqlPosibles aplicaciones del operador OR
Puedes utilizar el operador OR
para buscar conjuntos de datos complejos según varios criterios. Se puede usar, por ejemplo:
- para filtrar datos de clientes, pedidos o productos según criterios de búsqueda combinados, como categorías de productos, características de productos o fechas de pedidos y reclamaciones;
- para buscar empresas de sectores o regiones determinados;
- para filtrar transacciones sospechosas o inválidas mediante varias condiciones;
- para buscar información sobre empleados pertenecientes a un departamento o equipo determinado;
- para recuperar candidatos que no disponen de ciertas cualificaciones o no tienen experiencia profesional.
Para cada sistema de gestión de bases de datos escalable hay una solución de hosting adecuada. Encuentra la tuya en el SQL Server Hosting de IONOS y benefíciate del estándar alemán de protección de datos.
- Ancho de banda de hasta 1 Gb/s y tráfico ilimitado
- Almacenamiento SSD NVMe ultrarrápido
- Incluye: edición Plesk Web Host
Ejemplos del operador SQL OR
Las aplicaciones del operador OR
son prácticamente ilimitadas gracias a la posibilidad de combinación con SQL WHERE
, otros operadores SQL y otras funciones de SQL. Te mostramos a continuación tres de sus ejemplos de aplicación.
Buscar pedidos de categorías específicas
Imagina que buscas en la tabla “Clientes” únicamente personas que han pedido productos de la categoría “Electrónica”, de la categoría “Belleza” o de ambas categorías. Los resultados solo incluyen la información a la que se aplica al menos una de las condiciones. Para definir las categorías se emplea el operador de comparación =
.
Su sintaxis tiene este aspecto:
SELECT *
FROM clientes
WHERE (categoría = 'electrónica' OR categoría = 'belleza')
sqlFiltrar candidatos
Imagina que en la tabla “Candidatos” necesitas encontrar personas que tengan una titulación en “Electrotecnia” o en “Informática” y que en ambos casos cuenten con más de tres años de experiencia. Para ello, has de combinar OR
y AND
. La búsqueda tendrá este aspecto:
SELECT *
FROM candidatos
WHERE (titulación = 'electrotecnia' OR titulación = 'informática')
AND (experiencia >= 3)
sqlBuscar datos por región
En la tabla “Clientes” tienes que buscar clientes de Alemania o de Suiza. La sintaxis sería la siguiente:
SELECT *
FROM clientes
WHERE país = 'Alemania' OR país = 'Suiza'
sqlAlternativas a SQL OR
Con el operador OR
es posible buscar con varios criterios de búsqueda de manera sencilla y rápida. Otros operadores de SQL ofrecen funciones idénticas o similares:
CASE
: la instrucción SQL CASE permite comprobar, mediante las cláusulasWHERE
,THEN
yELSE
,condiciones de búsqueda y realizar análisis complejos sobre conjuntos de resultados relevantes. La evaluación se realiza siguiendo el método IF THEN ELSE de condición en condición, de abajo hacia arriba. Sin embargo, el análisis se detiene en cuanto se cumple una de las condiciones.IN
: con el operadorIN
combinado con la cláusulaWHERE
se pueden examinar conjuntos de datos definiendo valores o cadenas de caracteres medianteIN
y buscar coincidencias en una tabla o columna.EXISTS
: el operador SQL EXISTS sirve para comprobar si al menos un conjunto de datos seleccionado perteneciente a otra tabla coincide con la primera tabla. Si hay al menos una coincidencia, se incluye el resultado en la tabla de destino. No obstante, este operador solo es útil si hay una relación entre ambas tablas.