Consultas SELECT, WHERE, y JOIN en MySQL

En MySQL, las consultas SELECT, WHERE, y JOIN son fundamentales para extraer, filtrar y relacionar datos de las tablas en una base de datos relacional. A continuación, se explica cómo crear tablas y cómo utilizar estas consultas de manera efectiva en phpMyAdmin.

1. Creación de Tablas en phpMyAdmin

Antes de realizar consultas, es esencial tener tablas donde almacenar y organizar los datos. Vamos a crear dos tablas: productos y categorias, para ilustrar cómo funcionan las consultas SELECT, WHERE, y JOIN.

Creación de la tabla categorias

Abre phpMyAdmin y selecciona la base de datos donde quieres crear la tabla.

Haz clic en la pestaña “SQL” y escribe la siguiente consulta para crear la tabla categorias:

CREATE TABLE categorias (
    id INT AUTO_INCREMENT PRIMARY KEY,
    nombre VARCHAR(50) NOT NULL
);

Haz clic en “Continuar” o “Go” para ejecutar la consulta.

Esta tabla categorias tiene dos columnas: id (que es una clave primaria y se autoincrementa) y nombre (que almacena el nombre de la categoría).

Creación de la tabla productos

En la misma base de datos, ve a la pestaña “SQL” y escribe la siguiente consulta para crear la tabla productos:

CREATE TABLE productos (
    id INT AUTO_INCREMENT PRIMARY KEY,
    nombre VARCHAR(100) NOT NULL,
    precio DECIMAL(10, 2) NOT NULL,
    cantidad INT NOT NULL,
    categoria_id INT,
    FOREIGN KEY (categoria_id) REFERENCES categorias(id)
);

Haz clic en “Continuar” para ejecutar la consulta.

La tabla productos contiene cinco columnas:

  • id: Clave primaria autoincrementada.
  • nombre: El nombre del producto.
  • precio: El precio del producto, con dos decimales.
  • cantidad: El número de unidades disponibles.
  • categoria_id: Una clave foránea que referencia a la columna id de la tabla categorias.

2. Insertar Datos en las Tablas

Con las tablas creadas, ahora vamos a insertar algunos datos en ellas.

Insertar datos en la tabla categorias
  1. Selecciona la tabla categorias en phpMyAdmin.
  2. Haz clic en la pestaña “Insertar”.
  3. Rellena el formulario con algunos nombres de categorías. Por ejemplo:
    • nombre: “Papelería”
    • nombre: “Electrónica”
  4. Haz clic en “Continuar” para insertar los registros.
Insertar datos en la tabla productos
  1. Selecciona la tabla productos y ve a la pestaña “Insertar”.
  2. Introduce algunos productos vinculados a las categorías insertadas. Ejemplo:
    • nombre: “Lápiz”
    • precio: 0.50
    • cantidad: 100
    • categoria_id: 1 (esto refiere a “Papelería”)
    • nombre: “Ratón”
    • precio: 15.00
    • cantidad: 50
    • categoria_id: 2 (esto refiere a “Electrónica”)
  3. Haz clic en “Continuar” para guardar los datos.

3. Consultas SELECT

Ahora que las tablas están creadas y tienen datos, podemos realizar consultas SELECT para obtener la información deseada.

Selección Básica de Datos

Para recuperar todos los registros de la tabla productos, escribe la siguiente consulta SQL en la pestaña “SQL” de phpMyAdmin:

SELECT * FROM productos;

Esta consulta devolverá todas las columnas (*) de todos los registros en la tabla productos.

Seleccionar Columnas Específicas

Si solo necesitas ver ciertos campos, por ejemplo, el nombre y el precio de los productos, utiliza:

SELECT nombre, precio FROM productos;

4. Filtrar Datos con WHERE

La cláusula WHERE se utiliza para filtrar los resultados de una consulta, mostrando solo los registros que cumplen con una condición específica.

Ejemplo de WHERE

Para seleccionar todos los productos con un precio mayor a 10, puedes usar:

SELECT nombre, precio FROM productos WHERE precio > 10;

Esta consulta devolverá solo los productos cuyo precio es mayor a 10.

Uso de WHERE con Múltiples Condiciones

Puedes combinar varias condiciones con AND y OR. Por ejemplo, para encontrar productos de la categoría “Electrónica” con precio menor o igual a 20:

SELECT nombre, precio FROM productos WHERE precio <= 20 AND categoria_id = 2;

5. Relacionar Tablas con JOIN

El uso de JOIN permite combinar datos de dos o más tablas basadas en una columna relacionada. Esto es útil para combinar datos de las tablas productos y categorias.

Ejemplo de INNER JOIN

Para mostrar el nombre de cada producto junto con su categoría, puedes usar:

SELECT productos.nombre AS producto, productos.precio, categorias.nombre AS categoria
FROM productos
INNER JOIN categorias ON productos.categoria_id = categorias.id;

Aquí, INNER JOIN combina las tablas productos y categorias donde productos.categoria_id coincide con categorias.id.

Ejemplo de LEFT JOIN

Si deseas mostrar todos los productos, incluso aquellos que no tienen una categoría asignada (es decir, categoria_id es NULL), utiliza:

SELECT productos.nombre AS producto, productos.precio, categorias.nombre AS categoria
FROM productos
LEFT JOIN categorias ON productos.categoria_id = categorias.id;

Con LEFT JOIN, se incluirán todos los registros de productos, y si no hay una coincidencia en categorias, el campo categoria será NULL.

Conclusión

Las consultas SELECT, WHERE, y JOIN son herramientas esenciales para la gestión de datos en MySQL. A través de ellas, puedes recuperar y manipular información de manera eficiente y efectiva, especialmente cuando trabajas con bases de datos relacionales que involucran múltiples tablas. La capacidad de filtrar y combinar datos te permite extraer exactamente la información que necesitas para tus aplicaciones o análisis.

Facebook
Twitter
LinkedIn

Dejá un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *