La combinación de power query devuelve menos filas de las esperadas: solución
🔍 WiseChecker

La combinación de power query devuelve menos filas de las esperadas: solución

Cuando combinas dos tablas en Power Query, el resultado puede contener menos filas que la tabla izquierda. Esto ocurre porque el tipo de combinación predeterminado es una combinación externa izquierda, que solo conserva las filas de la tabla izquierda que coinciden con al menos una fila en la tabla derecha. Si la tabla derecha tiene claves duplicadas o faltan coincidencias, las filas de la tabla izquierda pueden eliminarse o duplicarse incorrectamente. Este artículo explica por qué cambia el número de filas durante una combinación y proporciona soluciones paso a paso para conservar todas las filas esperadas.

Conclusiones clave: Solución de problemas de recuento de filas en combinaciones de Power Query

  • Inicio > Combinar consultas > Lista desplegable Tipo de combinación: Cambia de Externo izquierdo a Anti izquierdo o Externo completo para diagnosticar filas faltantes.
  • Elimina duplicados en la tabla derecha antes de combinar: Evita la multiplicación de filas cuando hay múltiples coincidencias.
  • Verifica los tipos de datos de las columnas y los espacios iniciales/finales: Los tipos no coincidentes o los espacios adicionales hacen que las claves de combinación no coincidan.

ADVERTISEMENT

Por qué Power Query devuelve menos filas que la tabla izquierda

Las operaciones de combinación de Power Query utilizan la lógica de unión de las bases de datos relacionales. El tipo de combinación predeterminado es Externo izquierdo, que conserva todas las filas de la tabla izquierda pero solo incluye filas de la tabla derecha que tienen una clave coincidente. Si una clave en la tabla izquierda no existe en la tabla derecha, la fila izquierda aún aparece en el resultado con valores nulos para las columnas de la tabla derecha. Ese comportamiento no reduce el número de filas.

El número de filas disminuye solo cuando se usa un tipo de combinación que filtra las filas no coincidentes. Los tipos de combinación más comunes que reducen el número de filas son:

Combinación interna

Una combinación interna conserva solo las filas donde la clave existe en ambas tablas. Cualquier fila de la tabla izquierda sin una clave coincidente en la tabla derecha se elimina. Esta es la causa más frecuente de menos filas.

Combinación anti izquierda

Una combinación anti izquierda conserva solo las filas de la tabla izquierda que no tienen coincidencia en la tabla derecha. Esto reduce intencionalmente el número de filas al conjunto de filas no coincidentes.

Combinación externa derecha

Una combinación externa derecha conserva todas las filas de la tabla derecha y solo las filas coincidentes de la izquierda. El resultado puede tener menos filas que la tabla izquierda si la tabla derecha es más pequeña.

Además del tipo de combinación, otros dos factores causan pérdida inesperada de filas: claves duplicadas en la tabla derecha y tipos de datos no coincidentes. Cuando la tabla derecha tiene claves duplicadas, una combinación externa izquierda multiplica las filas: cada coincidencia agrega una fila, por lo que el resultado puede tener más filas que la tabla izquierda. Pero si luego aplicas un filtro o eliminas duplicados después de la combinación, el número de filas disminuye. Los tipos de datos no coincidentes hacen que las claves de combinación nunca coincidan, por lo que una combinación interna devuelve cero filas mientras que una combinación externa izquierda devuelve todas las filas izquierdas con valores nulos.

Pasos para diagnosticar y solucionar el recuento de filas de la combinación

Sigue estos pasos en orden. Después de cada paso, verifica el recuento de filas en el panel de vista previa de Power Query en la parte inferior izquierda.

  1. Verifica el tipo de combinación en el cuadro de diálogo Combinar
    Ve a Inicio > Combinar consultas. En el cuadro de diálogo Combinar, observa la lista desplegable Tipo de combinación. Si está configurado en Interna, Anti izquierda o Externa derecha, cámbialo a Externo izquierdo (el predeterminado). Externo izquierdo conserva todas las filas de la tabla izquierda. Haz clic en Aceptar y verifica el recuento de filas.
  2. Elimina claves duplicadas de la tabla derecha antes de combinar
    Las claves duplicadas en la tabla derecha hacen que la combinación produzca más filas que la tabla izquierda. Para solucionarlo, selecciona la consulta derecha en el panel Consultas. Selecciona la columna o columnas de clave. Ve a Inicio > Quitar filas > Quitar duplicados. Ahora vuelve a ejecutar la combinación. El recuento de filas debería coincidir con la tabla izquierda.
  3. Verifica si hay espacios iniciales o finales en las columnas de clave
    En ambas tablas, selecciona la columna de clave. Ve a Transformar > Formato > Recortar para eliminar espacios iniciales y finales. Luego ve a Transformar > Formato > Limpiar para eliminar caracteres no imprimibles. Vuelve a ejecutar la combinación.
  4. Asegúrate de que los tipos de datos coincidan en las columnas de clave
    En ambas tablas, selecciona la columna de clave. Observa el icono de tipo de datos en el encabezado de la columna (123 para número, ABC para texto, calendario para fecha). Ambas columnas de clave deben tener el mismo tipo de datos. Si difieren, haz clic en el icono de tipo de datos y elige el tipo coincidente. Los tipos de texto y número nunca coinciden, incluso si los valores se ven idénticos.
  5. Usa una combinación anti izquierda para identificar claves faltantes
    Crea una nueva combinación con las mismas dos tablas pero establece el Tipo de combinación en Anti izquierda. Esto devuelve solo las filas de la tabla izquierda que no tienen coincidencia en la tabla derecha. Examina estas filas para entender por qué las claves no coinciden: busca espacios, mayúsculas/minúsculas diferentes o valores faltantes.
  6. Verifica si hay filtros aplicados después del paso de combinación
    En el panel Pasos aplicados a la derecha, haz clic en cada paso después de la combinación. Busca pasos llamados Filas filtradas o Duplicados eliminados. Si existe algún paso de filtro después de la combinación, puede estar eliminando filas. Elimina o modifica el paso de filtro para restaurar el recuento de filas esperado.

ADVERTISEMENT

Si la combinación de Power Query aún devuelve menos filas

La combinación produce más filas de las esperadas, no menos

Este es el problema opuesto, pero a menudo es la causa raíz de la pérdida de filas después de pasos adicionales. Si la tabla derecha tiene claves duplicadas, la combinación multiplica las filas. Luego podrías agregar un paso de Eliminar duplicados para volver al recuento de filas de la tabla izquierda, pero eso puede eliminar filas sin querer. En su lugar, elimina los duplicados de la tabla derecha antes del paso de combinación.

Aparecen valores nulos en las columnas combinadas para todas las filas

Cuando cada fila en el resultado combinado muestra valores nulos para las columnas de la tabla derecha, las claves de combinación nunca coincidieron. La causa más común es un tipo de datos no coincidente, por ejemplo, una columna de clave es Texto y la otra es Número entero. Cambia ambas al mismo tipo. Otra causa es que la tabla derecha está vacía. Verifica el recuento de filas de la tabla derecha en el panel Consultas.

El recuento de filas cambia después de actualizar la consulta

Si los datos de origen cambian entre actualizaciones, el recuento de filas de la combinación puede cambiar. Por ejemplo, las nuevas filas agregadas a la tabla izquierda pueden tener claves que no existen en la tabla derecha. Con una combinación externa izquierda, esas filas aún aparecen. Con una combinación interna, se eliminan. Para conservar todas las filas de la tabla izquierda, usa una combinación externa izquierda. Para diagnosticar, actualiza la consulta y verifica inmediatamente el recuento de filas en el panel de vista previa antes de aplicar cualquier paso adicional.

Combinación externa izquierda vs. combinación interna: diferencias clave

Elemento Combinación externa izquierda Combinación interna
Filas de la tabla izquierda Todas las filas conservadas Solo filas con coincidencia en la tabla derecha
Filas de la tabla derecha Solo filas coincidentes, nulos para no coincidentes Solo filas coincidentes
Recuento de filas del resultado vs. tabla izquierda Igual o mayor si la tabla derecha tiene duplicados Igual o menor
Caso de uso Conservar todos los datos de la izquierda, agregar información relacionada de la derecha Conservar solo registros que existen en ambas tablas

Ahora puedes identificar por qué una combinación de Power Query devuelve menos filas de las esperadas. Comienza verificando el tipo de combinación: cambia a Externo izquierdo si necesitas todas las filas de la tabla izquierda. Luego elimina los duplicados de la tabla derecha y verifica los tipos de datos en las columnas de clave. Para problemas persistentes, usa una combinación anti izquierda para aislar las filas no coincidentes. Como consejo avanzado, crea un parámetro que almacene el nombre del tipo de combinación y refiérelo en el cuadro de diálogo de combinación para cambiar rápidamente entre tipos de combinación durante las pruebas.

ADVERTISEMENT