Seleccionar valores múltiples usando WHERE en MySQL

Muhammad Husnain 15 febrero 2024
  1. la cláusula WHERE en consultas SQL
  2. Seleccionar registros basados en múltiples condiciones usando la cláusula WHERE en MySQL
Seleccionar valores múltiples usando WHERE en MySQL

Este artículo trata sobre el uso de consultas MySQL para obtener datos de tablas o relaciones específicas que pueden cumplir con ciertos criterios. Para ello, se utiliza una cláusula WHERE en las consultas SQL.

la cláusula WHERE en consultas SQL

La cláusula WHERE especifica los criterios para recuperar datos de una sola tabla o unir varias tablas. La consulta devuelve el valor correspondiente de la tabla si se cumple la condición proporcionada.

Puede usar la cláusula WHERE para restringir los registros y obtener solo los necesarios.

La cláusula WHERE se usa no solo en la declaración SELECT sino también en UPDATE, DELETE y otras declaraciones.

Sintaxis de la Cláusula WHERE

En SQL, la siguiente sintaxis se usa para la cláusula WHERE para filtrar el registro según condiciones específicas.

SELECT column1, column2, ...
FROM table_name
WHERE [condition];

La condición se puede hacer usando diferentes relacionales (<, >, <=, >=, ==, !=) o lógicas (Y, O, operadores NOT).

Supongamos que tenemos una tabla Empleados que guarda los datos de los empleados de una organización. Los datos de la tabla se muestran a continuación:

Tabla de empleados

La tabla anterior muestra los datos de 6 empleados de la tabla Empleados. Supongamos que necesitamos seleccionar los empleados cuya edad es mayor a 40 años, entonces utilizaremos la siguiente consulta:

SELECT * from Employees
WHERE Emp_Age > 40

Producción:

Empleados con edad mayor a 40 años

Tenga en cuenta que hemos utilizado un operador relacional en la cláusula WHERE. De manera similar, podemos usar operadores lógicos y relacionales en la cláusula WHERE.

Seleccionar registros basados en múltiples condiciones usando la cláusula WHERE en MySQL

También podemos filtrar los registros de la tabla en función de múltiples condiciones. Para ello, podemos utilizar operadores lógicos como AND y OR en función de nuestras condiciones.

Por ejemplo, necesitamos obtener los nombres y salarios de empleados menores de 40 años y salarios superiores a $3000. La consulta para esta condición será:

SELECT Emp_Name, Emp_Salary FROM `Employees`
WHERE Emp_Age < 40 AND Emp_Salary > 3000

El resultado de esta consulta será:

Empleados Con Edad Menos De 40 Y Salario Más De 3000

Puede ver en el resultado que solo se seleccionan aquellos empleados que cumplen con las dos condiciones especificadas en la consulta. Si necesitamos que se cumpla alguna de las condiciones, entonces podemos hacer uso del operador OR en lugar del operador AND, así:

SELECT Emp_Name, Emp_Salary FROM `Employees`
WHERE Emp_Age < 40 OR Emp_Salary > 3000

Ahora el conjunto de resultados sería así:

Empleados con Edad Menos de 40 o Salario Más de 3000

Puede ver que el resultado contiene más filas que el resultado anterior. Esto se debe a que todos los empleados tienen menos de 40 años o su salario es más significativo que $3000.

También se pueden obtener los mismos resultados utilizando el operador IN. El operador IN funciona igual que el operador OR, excepto que la estructura de la consulta es mejor.

SELECT Emp_ID,Emp_Name, Emp_Age FROM `Employees`
WHERE Emp_Name IN ("John","David")

El conjunto de resultados sería así:

Uso del operador IN para seleccionar valores múltiples - Salida

En las consultas SQL, puede ver varias formas de seleccionar varios valores de las tablas. Se puede optar por cualquiera de ellos según sus necesidades y la salida de datos deseada.

Muhammad Husnain avatar Muhammad Husnain avatar

Husnain is a professional Software Engineer and a researcher who loves to learn, build, write, and teach. Having worked various jobs in the IT industry, he especially enjoys finding ways to express complex ideas in simple ways through his content. In his free time, Husnain unwinds by thinking about tech fiction to solve problems around him.

LinkedIn