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

The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more

Reply
Syndicate_Admin
Administrator
Administrator

Columna relacionada entre dos tablas

Tengo una tabla pequeña (NARANJA) con una relación de 1 a muchos con un conjunto de datos muy grande (APPLE), el punto de conexión es "ciudad"

Me gustaría establecer una columna en APPLE que indique si la ciudad está presente en ORANGE, con una declaración de falso o verdadero dependiendo de si la ciudad está presente en ambas tablas.

No tengo acceso al modelo de datos en la parte posterior, por lo que necesito manejar esto mediante la inserción de una columna

KristofferAJ_0-1737384229497.png

¿Quizás RELACIONADO? ¿BUSCARVALOR? ¿TABLA RELACIONADA?

7 REPLIES 7
Syndicate_Admin
Administrator
Administrator

¡Hola! esto se ve muy acertado, lo estaba intentando pero obtuve un error que decía que la columna 'no se puede empujar a la fuente de datos remota y no se puede usar en este escenario' - sospecho que es porque es un modelo en el que no tengo derechos para hacer una columna.

¡Gracias Bibiano_Geraldo

Hola, @KristofferAJ

En primer lugar, el modo de unión a la tabla de APPLE es Directquery y, en segundo lugar, el modo de importación de ORANGE. Tienes una relación de uno a muchos para ellos.

Me encontré con el mismo problema que usted cuando creé una columna calculada en modo de consulta directa usando la expresión de Super user:

vjianpengmsft_0-1737427389027.png

Para ello, he creado una medida de la siguiente manera:

Measure = 
VAR _apple_table = SUMMARIZE(ALLSELECTED(APPLE),'APPLE'[City],"column",
    IF(ISBLANK(LOOKUPVALUE('Table'[ORANGE],'Table'[ORANGE],'APPLE'[City])),"FALSE","TRUE")
)
VAR _current_city = SELECTEDVALUE(APPLE[City])
RETURN MAXX(FILTER(_apple_table,'APPLE'[City] = _current_city),[column])

vjianpengmsft_1-1737427956433.png

Funciona correctamente con las tablas importadas de modo de conexión Tabla y Consulta directa.

Saludos

Jianpeng Leer

Si esta publicación ayuda, considere Acéptalo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.

¡Esto es genial y funciona! - Puedo usarlo como parte de una tabla, pero no como leyenda o en un filtro, ¿sospecho que es porque es una medida?

¿De alguna manera que esto se pueda convertir en una columna? - cuando lo intento me da el error de "dependencia circular"

Hola, @KristofferAJ

Si aún desea crear una columna calculada en la tabla APPLE, puede probar la siguiente expresión:

Column = 
VAR _table = {
    ("London"),
    ("Munich")
}
RETURN IF([City] IN _table,"TRUE","FALSE")

vjianpengmsft_4-1737452084459.png

vjianpengmsft_5-1737452104049.png

Debes estructurar los países de tu tabla ORANGE de _table en que cada paréntesis represente una fila.

Saludos

Jianpeng Leer

Si esta publicación ayuda, considere Acéptalo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.

Hola, @KristofferAJ

Utilice la siguiente expresión para crear una tabla calculada:

Table 2 = SUMMARIZE('APPLE','APPLE'[City],"ORANGE",[Measure])

vjianpengmsft_0-1737450811681.png

Vuelva a crear la relación de la siguiente manera:

vjianpengmsft_1-1737450857473.png

Dado que los países de la tabla ORANGE no incluyen necesariamente los países de APPLE, aparecerán valores en blanco cuando se introduzcan en la segmentación:

vjianpengmsft_3-1737451100195.png

Así que configura esta columna:

vjianpengmsft_2-1737450882011.png

Saludos

Jianpeng Leer

Si esta publicación ayuda, considere Acéptalo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.

Hola @KristofferAJ ,
El error que se produce indica que el origen de datos con el que está trabajando es un modelo de DirectQuery o reside en una base de datos en la que no tiene la capacidad de modificar o crear columnas calculadas.

Puede obtener más información sobre las limitaciones de DirectQuery en Power BI aquí

Syndicate_Admin
Administrator
Administrator

Hola @KristofferAJ ,

Puedes usar Función LOOKUPVALUE para lograr su objetivo:
Vaya a la tabla APPLE de Power BI Desktop y use la siguiente fórmula DAX para la nueva columna:

CityExistsInOrange = 
IF(
    ISBLANK(
        LOOKUPVALUE(
            ORANGE[city], 
            ORANGE[city], 
            APPLE[city]
        )
    ), 
    FALSE, 
    TRUE
)

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