Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

View all the Fabric Data Days sessions on demand. View schedule

Reply
Syndicate_Admin
Administrator
Administrator

Power Query devuelve resultados incorrectos al combinar y comparar dos tablas, pero solo a veces

Tengo la Tabla A y la Tabla B con una columna en común, llamémosla Ciudad, y las partes enteras de esa columna son distintas en ambas tablas: no hay duplicados, pero a veces se repiten en todas las tablas. Ambas tablas también tienen Fecha y Clasificación como columnas.

Como las tablas provienen de diferentes fuentes, solo puedo combinarlas en Power Query, y como los datos de una pueden ser más recientes que de otra, realizo una comprobación condicional después de la combinación.

Los pasos son:

- ....

- Fusionar la Tabla A y la Tabla B en la ciudad

- Expanda la Tabla B, columnas Table_B.Fecha y Table_B.Clasificación

- Crear columna de comparación: si la ciudad no es nula en la tabla B Y la fecha de la tabla B es mayor que la fecha de la tabla A, entonces "Sí", de lo contrario "No"

- Filtre el resultado por la columna Comparar, solo tome No

En esencia, estoy tratando de eliminar cualquier entrada en la Tabla A que tenga entradas más nuevas para la misma ciudad en la Tabla B.

Para la gran mayoría de los casos, esto funciona perfectamente bien, pero estoy notando una pequeña cantidad de entradas en las que los campos relevantes no se completan y, por lo tanto, las entradas se mantienen de manera errática en lugar de eliminarse.

Digamos que tengo un Chichago como ciudad, que puedo ver claramente en la Tabla B en la Vista de datos, con las columnas relevantes rellenadas, pero por alguna razón esas columnas no se rellenan en la parte Combinar - Expandir de la Power Query anterior. Esto significa que se deja en la Tabla A cuando debería haberse eliminado. Hay unas pocas docenas de ejemplos de esto en un conjunto de datos de unas pocas docenas de miles, pero esto está causando problemas al crear tablas personalizadas más adelante.

Hasta ahora he intentado agregar Table.Buffer a la parte Expand de la consulta, pero mientras escribo la carga sigue siendo "Esperando otras consultas", por lo que tengo dudas sobre su eficiencia, si es que funciona.

¿Hay alguna otra forma de asegurarme de que la parte Combinar - Expandir de la consulta funciona bien, ya que claramente no lo está haciendo en este momento?

5 REPLIES 5
Syndicate_Admin
Administrator
Administrator

Sus soluciones son geniales @lbendlin , ¡funciona muy bien!

Hola, @SevsBo

Después de mis pruebas, el código M de superusuario funciona muy bien:

vjianpengmsft_0-1719295468156.png

vjianpengmsft_1-1719295486715.png

vjianpengmsft_2-1719295504931.png

Dado que los datos de muestra que proporcionó solo tienen meses en inglés, en la comparación, como dijo Super User, enero es más pequeño que agosto.

Puede descargar el archivo PBIX de prueba para este uso a continuación.

Saludos

Jianpeng Li

Si esta publicación ayuda, considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

Syndicate_Admin
Administrator
Administrator

Hola @lbendlin ,

Esto es lo más cerca que puedo estar de proporcionar datos de muestra sin incluir datos confidenciales:

Table_1

CiudadClasificaciónDate_Updated
Washington1Agosto
Denver1Agosto
Nueva York1Agosto
Miami1Agosto
Los Ángeles1Agosto

Table_2

CiudadClasificaciónDate_Updated
París2Enero
Washington2Enero
Londres2Enero
Miami2Septiembre
Los Ángeles2Septiembre

Resultado esperado después de los pasos de combinación y condicionales, pero antes del filtrado:

CiudadClasificaciónDate_UpdatedTable_2.ClasificaciónTable_2.Fecha_ActualizadaConditional_colum_result
Washington1Agosto2EneroNO
Denver1AgostonulonuloNO
Nueva York1AgostonulonuloNO
Miami1Agosto2Septiembre
Los Ángeles1Agosto2Septiembre

En esencia, SÍ significa que se encontraron los datos correspondientes en Table_2 y que Table_2.Date_Updated es más reciente que Table_1.Date_Updated. Estos son los resultados que quiero filtrar en el siguiente paso, por lo que el resultado esperado serían los primeros tres elementos de la ciudad.

Resultado esperado después del filtrado:

CiudadClasificaciónDate_UpdatedTable_2.ClasificaciónTable_2.Fecha_ActualizadaConditional_colum_result
Washington1Agosto2EneroNO
Denver1AgostonulonuloNO
Nueva York1AgostonulonuloNO

Ejemplo de resultado real después del filtrado:

CiudadClasificaciónDate_UpdatedTable_2.ClasificaciónTable_2.Fecha_ActualizadaConditional_colum_result
Washington1Agosto2EneroNO
Denver1AgostonulonuloNO
Nueva York1AgostonulonuloNO
Miami1AgostonulonuloNO

La columna combinada y condicional se realiza en el nivel de consulta, y puedo ver que Miami tiene los valores correctos como se describe anteriormente, en ambas tablas, pero por alguna razón la tabla combinada final no recoge los valores, incluso si hago una actualización completa de todas las fuentes de datos.

¿Por qué "enero" no es mayor que "agosto"? Por orden alfabético lo es. Si desea comparar fechas, debe usar fechas.

Si la combinación no funciona y los dos valores tienen el mismo aspecto, ¿podría tratarse de algún espacio en blanco que se cuela en algún espacio en blanco? Intente ejecutar Text.Trim en las columnas.

Syndicate_Admin
Administrator
Administrator

Proporcione datos de muestra que cubran su problema o pregunta por completo, en un formato utilizable (no como una captura de pantalla).

No incluya información confidencial ni nada que no esté relacionado con el problema o la pregunta.

Si no está seguro de cómo cargar datos, consulte https://community.fabric.microsoft.com/t5/Community-Blog/How-to-provide-sample-data-in-the-Power-BI-...

Muestre el resultado esperado en función de los datos de muestra que proporcionó.

¿Quieres respuestas más rápidas? https://community.fabric.microsoft.com/t5/Desktop/How-to-Get-Your-Question-Answered-Quickly/m-p/1447...

Helpful resources

Announcements
November Power BI Update Carousel

Power BI Monthly Update - November 2025

Check out the November 2025 Power BI update to learn about new features.

Fabric Data Days Carousel

Fabric Data Days

Advance your Data & AI career with 50 days of live learning, contests, hands-on challenges, study groups & certifications and more!

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.

Top Kudoed Authors