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 columnaid
de la tablacategorias
.
2. Insertar Datos en las Tablas
Con las tablas creadas, ahora vamos a insertar algunos datos en ellas.
Insertar datos en la tabla categorias
- Selecciona la tabla
categorias
en phpMyAdmin. - Haz clic en la pestaña “Insertar”.
- Rellena el formulario con algunos nombres de categorías. Por ejemplo:
- nombre: “Papelería”
- nombre: “Electrónica”
- Haz clic en “Continuar” para insertar los registros.
Insertar datos en la tabla productos
- Selecciona la tabla
productos
y ve a la pestaña “Insertar”. - 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”)
- 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.