Guía Definitiva de Uniones y Subconsultas en SQL

Guía definitiva de Uniones y Subconsultas en SQL: domina INNER/LEFT/RIGHT/FULL JOIN, CROSS JOIN, subconsultas y CTE para consultas más eficientes y legibles.

9 sept 2025 • 5 min de lectura • Equip Q2BSTUDIO

Inteligencia-Artificial-

Bienvenido a la Guía Definitiva de Uniones y Subconsultas en SQL, parte 2 de nuestra serie práctica para dominar consultas sobre datos distribuidos en varias tablas. Aquí explicaremos de forma clara los distintos tipos de JOIN, cuándo usarlos, ejemplos reales y cómo las subconsultas y los CTE facilitan consultas más legibles y mantenibles.

Qué es un JOIN en SQL: en bases de datos relacionales los datos suelen estar normalizados en varias tablas relacionadas por claves. Un JOIN permite combinar filas de dos o más tablas usando una columna relacionada, normalmente una clave primaria y una clave foránea. Sintaxis básica: SELECT lista_de_columnas FROM tabla1 JOIN tabla2 ON tabla1.columna_comun = tabla2.columna_comun;

Cuándo usar JOIN: cuando los datos están normalizados en varias tablas, cuando se necesitan reportes que combinen entidades como clientes y pedidos, para validar que solo se recuperen registros emparejados, o para construir dashboards donde las relaciones importan.

Tipos principales de JOIN explicados con ejemplos sencillos

INNER JOIN: devuelve solo las filas que coinciden en ambas tablas. Ejemplo: SELECT e.name, e.salary, d.department_name FROM employees e INNER JOIN departments d ON e.department_id = d.department_id; Resultado: solo empleados con departamento válido.

LEFT JOIN: devuelve todas las filas de la tabla izquierda y las coincidencias de la derecha. Si no hay coincidencia, las columnas de la derecha aparecen como NULL. Ejemplo: SELECT e.name, e.salary, d.department_name FROM employees e LEFT JOIN departments d ON e.department_id = d.department_id; Resultado: todos los empleados, incluidos los sin departamento.

RIGHT JOIN: devuelve todas las filas de la tabla derecha y las coincidencias de la izquierda. Ejemplo: SELECT e.name, d.department_name FROM employees e RIGHT JOIN departments d ON e.department_id = d.department_id; Resultado: todos los departamentos, incluidos los sin empleados.

FULL OUTER JOIN: combina LEFT y RIGHT, devolviendo todas las filas cuando hay coincidencias en la izquierda o en la derecha. Ejemplo: SELECT e.name, d.department_name FROM employees e FULL OUTER JOIN departments d ON e.department_id = d.department_id; Resultado: visión completa de empleados y departamentos, incluyendo desajustes.

CROSS JOIN: producto cartesiano, combina cada fila de la primera tabla con cada fila de la segunda. Se usa raramente en producción, más para generar combinaciones o datos de prueba. Ejemplo: SELECT e.name, d.department_name FROM employees e CROSS JOIN departments d;

UNION: apila conjuntos de resultados. UNION elimina duplicados. Regla: ambas consultas deben devolver el mismo número de columnas con tipos compatibles. Ejemplo: SELECT columna FROM tabla1 UNION SELECT columna FROM tabla2;

Ejemplo de dataset de referencia: tabla employees con columnas employee_id, name, department_id, salary, hire_date; tabla departments con columnas department_id, department_name, location. Observa que algunos empleados pueden tener department_id NULL y algunos departamentos pueden no tener empleados asignados.

Claves: clave primaria identifica de forma única cada fila; clave foránea referencia la clave primaria de otra tabla y establece la relación necesaria para los JOIN.

WITH y Common Table Expressions CTE: cuando necesitamos reutilizar un resultado intermedio conviene usar WITH. Ejemplo práctico: calcular salario medio por departamento y luego unirlo con empleados. WITH dept_avg AS (SELECT department_id, AVG(salary) AS avg_salary FROM employees GROUP BY department_id) SELECT e.name, e.salary, d.department_name, dept_avg.avg_salary FROM employees e JOIN departments d ON e.department_id = d.department_id JOIN dept_avg ON e.department_id = dept_avg.department_id;

Subconsultas: una subconsulta es una consulta anidada que se ejecuta antes de la consulta externa. Pueden aparecer en SELECT, WHERE, FROM, INSERT, UPDATE o DELETE. Sintaxis típica en WHERE: SELECT columnas FROM tabla1 WHERE columna operador (SELECT columna FROM tabla2 WHERE condición);

Ejemplo de subconsulta escalar: encontrar empleados que ganan más que el salario medio. SELECT name, salary FROM employees WHERE salary > (SELECT AVG(salary) FROM employees);

IN y NOT IN: filtran comparando con una lista de valores resultado de la subconsulta. Ejemplo IN: SELECT name FROM employees WHERE department_id IN (101, 102); Ejemplo NOT IN: SELECT name FROM employees WHERE department_id NOT IN (101, 102);

EXISTS y NOT EXISTS: prueban si la subconsulta devuelve filas. EXISTS devuelve verdadero si la subconsulta produce al menos una fila. Ejemplo: SELECT * FROM employees e WHERE EXISTS (SELECT * FROM departments d WHERE d.department_id = e.department_id); Para empleados sin departamento usar NOT EXISTS.

Buenas prácticas rápidas: especifica siempre las columnas que necesitas en lugar de usar SELECT *, usa alias claros para tablas, evita CROSS JOIN accidental, indexa columnas usadas en ON y WHERE, maneja explícitamente NULLs en tus condiciones, y considera CTEs para mejorar legibilidad.

Cómo encaja esto con Q2BSTUDIO: en Q2BSTUDIO desarrollamos soluciones de software a medida y aplicaciones a medida que integran consultas SQL optimizadas y arquitecturas de datos escalables. Si necesitas una aplicación que combine datos relacionales, inteligencia artificial y visualización con Power BI podemos ayudarte. Descubre nuestros servicios de software a medida en software a medida y explora nuestras soluciones de inteligencia artificial para empresas, agentes IA y automatización inteligente.

Además de desarrollo y IA, ofrecemos servicios de ciberseguridad y pentesting, servicios cloud aws y azure, servicios inteligencia de negocio y consultoría en power bi para mejorar la toma de decisiones. Palabras clave relevantes para esta guía: aplicaciones a medida, software a medida, inteligencia artificial, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio, ia para empresas, agentes IA, power bi.

Resumen final: dominar JOINs y subconsultas es fundamental para cualquier profesional que trabaje con datos. Con INNER, LEFT, RIGHT, FULL y CROSS JOIN cubres la mayoría de los escenarios de combinación; las subconsultas y CTEs te dan flexibilidad y legibilidad adicional. Si buscas implementar estas técnicas en soluciones reales, Q2BSTUDIO puede acompañarte desde el diseño de la base de datos hasta la integración con IA y dashboards en Power BI.

Gracias por avanzar en tu viaje con SQL. Si quieres que diseñemos una solución a medida que aproveche consultas eficientes, inteligencia de negocio y agentes IA, vamos a trabajar juntos en tu proyecto.

UNA PAUSA?

Juga una estona abans de marxar

ELS NOSTRES SERVEIS

Com et podem ajudar

Intel·ligència artificial

Agents d'IA, chatbots i assistents intel·ligents que automatitzen tasques i atenen els teus clients 24/7 per millorar l'eficiència del teu negoci.

Més info

Desenvolupament de programari

Aplicacions web, mòbils i d'escriptori, intranets, e-commerce, SaaS i plataformes de gestió dissenyades per a les necessitats concretes de la teva empresa.

Més info

Serveis cloud

Migració, infraestructura, hosting gestionat, alta disponibilitat i seguretat en Microsoft Azure i Amazon Web Services perquè el teu negoci escali sense límits.

Més info

Ciberseguretat i pentesting

Auditories de seguretat, test d'intrusió (pentesting) i protecció d'aplicacions, dades i infraestructura on-premise i cloud, amb hacking ètic i compliment normatiu.

Més info

Business Intelligence

Quadres de comandament i anàlisi de dades amb Power BI: integrem les teves fonts, dissenyem dashboards i KPIs i convertim les teves dades en decisions.

Més info

Automatització de processos

Automatitzem tasques repetitives i connectem les teves aplicacions amb n8n, Power Automate, Make i RPA, eliminant treball manual i augmentant la productivitat.

Més info

Formació per a empreses

Formem els teus equips en tecnologia amb criteri: desenvolupament web, bases de dades, Git, bones pràctiques i seguretat, automatització amb n8n, intel·ligència artificial per a empreses i creació de solucions d'IA amb Azure AI Foundry.

Més info

Auditoria de codi

Auditem el codi que creguis tu, el teu equip o una IA: et diem què està bé i què millorar, el securitzem i el deixem llest per a producció, web o app.

Més info

Generació d'imatges amb IA

Creem per tu les imatges que necessita el teu negoci amb intel·ligència artificial: producte, xarxes, publicitat, il·lustració i avatars. Tu ens dius què vols i t'ho lliurem llest per fer servir.

Més info

Generació de vídeos amb IA

Creem per tu vídeos amb intel·ligència artificial: promocionals, per a xarxes, presentadors virtuals, doblatge i animacions. Ens comptes la idea i t'ho lliurem muntat i llest per publicar.

Més info

Avatars conversacionals amb IA

Creem avatars conversacionals amb IA —humans digitals amb cara i veu— que atenen els teus clients i equips amb el coneixement de la teva empresa, a la teva web, monitors interactius, WhatsApp o Teams.

Més info

Màrqueting Online i IA

Google Ads, Meta Ads, LinkedIn Ads i posicionament en motors d'IA (GEO/AEO): captem clients i fem que la teva marca aparegui on et busquen, també a ChatGPT, Gemini i Perplexity.

Més info

Tens un projecte en ment?

Explica'ns la teva visió i la convertim en una solució de programari. Sigui quin sigui l'abast, fem realitat la teva idea.

Live Chat