Introducción a las Bases de Datos SQL
Antes de profundizar en ejemplos prácticos sobre SQL (Structured Query Language), es vital entender qué es una base de datos SQL y cómo funciona. Una base de datos SQL es un sistema de gestión de bases de datos relacional (RDBMS) que permite a los usuarios crear, leer, actualizar y borrar datos almacenados en un formato tabular.
Conceptos Básicos de SQL
SQL es el lenguaje estándar para interactuar con una RDBMS. Los conceptos clave de SQL incluyen:
- Tabla: una estructura que almacena datos en filas y columnas.
- Esquema: define la estructura y los tipos de datos de una tabla.
- Clave primaria: un campo único que identifica cada fila de una tabla.
- Clave foránea: un campo en una tabla que enlaza a la clave primaria de otra tabla.
Ejemplo de esquema de tabla
CREATE TABLE Usuarios (
ID INT PRIMARY KEY AUTO_INCREMENT,
Nombre VARCHAR(50) NOT NULL,
Email VARCHAR(100) NOT NULL UNIQUE
);
Operaciones CRUD en SQL
CRUD representa las operaciones básicas de cualquier base de datos: Crear (Create), Leer (Read), Actualizar (Update) y Borrar (Delete).
Crear (INSERT)
INSERT INTO Usuarios (Nombre, Email) VALUES ('Juan Pérez', 'juan.perez@example.com');
Leer (SELECT)
SELECT * FROM Usuarios;
SELECT Nombre, Email FROM Usuarios WHERE ID = 1;
Actualizar (UPDATE)
UPDATE Usuarios SET Email = 'nuevo_email@example.com' WHERE ID = 1;
Borrar (DELETE)
DELETE FROM Usuarios WHERE ID = 1;
Relaciones y Joins en SQL
Una característica poderosa de las bases de datos relacionales es la habilidad para relacionar tablas a través de claves foráneas. Esto permite la realización de consultas que combinan datos de múltiples tablas.
JOIN Básico
SELECT Usuarios.Nombre, Pedidos.ID
FROM Usuarios
INNER JOIN Pedidos ON Usuarios.ID = Pedidos.UsuarioID;
Trabajando con Tablas en SQL
Una tabla simple de usuarios
ID | Nombre | |
---|---|---|
1 | Juan Pérez | juan.perez@example.com |
Consultas Complejas en SQL
Las consultas SQL pueden volverse complejas cuando se mezclan múltiples operaciones, funciones, y la necesidad de optimizar el rendimiento.
Ejemplo de Subquery
SELECT Nombre, (SELECT COUNT(*) FROM Pedidos WHERE Pedidos.UsuarioID = Usuarios.ID) AS NumPedidos
FROM Usuarios;
Recursos Adicionales
Para continuar aprendiendo sobre SQL y bases de datos, visitar los siguientes enlaces: