Bienvenidos a la sección de SQL de nuestro curso. SQL es el lenguaje de programación utilizado para comunicarse con y manipular bases de datos relacionales. Desde consultar datos hasta crear y modificar esquemas de bases de datos, SQL es una herramienta esencial para desarrolladores, analistas de datos, científicos de datos y cualquier persona que trabaje con datos almacenados de manera relacional.
En esta sección, aprenderás los fundamentos de SQL, incluyendo cómo realizar consultas básicas, cómo filtrar y ordenar datos, y cómo unir tablas. A medida que progreses, abordaremos conceptos más avanzados como subconsultas, funciones de agregación y modificaciones de datos y estructuras de base de datos. Los ejercicios están diseñados para proporcionarte una práctica práctica y mejorar tu comprensión y habilidades en el manejo de bases de datos relacionales.
Ejercicio 1: Selección Básica de Datos
Enunciado: Escribe una consulta SQL que seleccione todas las columnas de una tabla llamada empleados.
Solución:
SELECT * FROM empleados;
Ejercicio 2: Filtrado de Datos
Enunciado: Desde la tabla empleados, selecciona los registros donde el campo departamento es igual a 'Finanzas'.
Solución:
SELECT * FROM empleados WHERE departamento = 'Finanzas';
Ejercicio 3: Ordenamiento de Resultados
Enunciado: Selecciona todos los empleados de la tabla empleados y ordénalos por el campo edad de forma descendente.
Solución:
SELECT * FROM empleados ORDER BY edad DESC;
Ejercicio 4: Funciones de Agregación
Enunciado: Calcula el salario promedio de todos los empleados en el departamento de 'Tecnología' en la tabla empleados.
Solución:
SELECT AVG(salario) AS salario_promedio FROM empleados WHERE departamento = 'Tecnología';
Ejercicio 5: Unión de Tablas
Enunciado: Suponiendo que tienes dos tablas, empleados (con campos id, nombre, departamento_id) y departamentos (con campos id, nombre_departamento), escribe una consulta que seleccione el nombre de todos los empleados junto con el nombre de su departamento.
Solución:
SELECT empleados.nombre, departamentos.nombre_departamento
FROM empleados
JOIN departamentos ON empleados.departamento_id = departamentos.id;
Estos ejercicios te proporcionarán una base sólida en el uso de SQL para la manipulación y consulta de bases de datos. SQL es una habilidad valiosa en muchas áreas de la tecnología y los datos, y estos ejercicios son solo el comienzo de lo que puedes hacer con este poderoso lenguaje. A medida que avanzas, te encontrarás con desafíos más complejos y situaciones del mundo real que requerirán un pensamiento crítico y soluciones creativas.
Ejercicio 6: Contando Registros
Enunciado: Escribe una consulta SQL que cuente el número total de empleados en la tabla empleados.
Solución:
SELECT COUNT(*) AS total_empleados FROM empleados;
Ejercicio 7: Máximo y Mínimo
Enunciado: Encuentra el salario máximo y mínimo dentro de la tabla empleados.
Solución:
SELECT MAX(salario) AS salario_maximo, MIN(salario) AS salario_minimo FROM empleados;
Ejercicio 8: Agrupación y Suma
Enunciado: Calcula la suma total de salarios pagados por cada departamento en la tabla empleados, asumiendo que cada empleado pertenece a un departamento representado por un campo departamento_id.
Solución:
SELECT departamento_id, SUM(salario) AS suma_salarios
FROM empleados
GROUP BY departamento_id;
Ejercicio 9: Subconsultas
Enunciado: Encuentra los nombres de todos los empleados cuyo salario es superior al promedio de salarios en la tabla empleados.
Solución:
SELECT nombre
FROM empleados
WHERE salario > (SELECT AVG(salario) FROM empleados);
Ejercicio 10: Join Complejo
Enunciado: Supongamos que tienes una segunda tabla llamada departamentos con id y nombre_departamento. Escribe una consulta que muestre el nombre de cada empleado junto con el nombre de su departamento.
Solución:
SELECT e.nombre AS nombre_empleado, d.nombre_departamento
FROM empleados e
JOIN departamentos d ON e.departamento_id = d.id;
Estos últimos te permitirán practicar y profundizar tu comprensión de operaciones más complejas en SQL, incluyendo la manipulación de datos y el trabajo con múltiples tablas. A medida que avanzas, te encontrarás con desafíos que requieren un pensamiento más analítico y estrategias de consulta más sofisticadas, lo cual es esencial para el manejo eficiente de bases de datos en el mundo real.