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

Grow your Fabric skills and prepare for the DP-600 certification exam by completing the latest Microsoft Fabric challenge.

Reply
Syndicate_Admin
Administrator
Administrator

Filtrado de dos tablas con una segmentación de datos por un par de columnas compartidas

Tengo dos tablas que contienen algunas columnas compartidas que quiero usar como segmentaciones para filtrar ambos conjuntos de datos a la vez. No deseo combinar estas tablas, ya que son datos bastante diferentes y también son conexiones API separadas.

Para la primera columna compartida, intenté crear una nueva tabla para usarla como filtro en su lugar:

Tabla compartida=
DISTINTO(UNIÓN(
DISTINTO('Tabla 1'[Columna compartida]), DISTINTO('Tabla 2'[Columna compartida])))
Cuando intento crear una relación entre esta tabla y la tabla 1 o 2, no puedo seleccionar una o varias debido a problemas de cardinalidad.
También probé:
Tabla compartida = UNIÓN(SELECTCOLUMNS('Tabla 1', "Columna compartida", 'Tabla 1'[Columna compartida]), SELECTCOLUMNS('Tabla 2', "Columna compartida", 'Tabla 2'[Columna compartida]))
Tengo el mismo problema con la creación de una relación. La única opción es de muchos a muchos, lo que no funciona cuando uso esta cardinalidad e intento usar mi columna de tabla compartida como filtro.

¿Qué me estoy perdiendo? ¿Existe una solución alternativa o un método diferente para hacer esto?

1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

Descubrí un error en mi tabla original, usando mi primera tabla:

Tabla compartida=
DISTINTO(UNIÓN(
DISTINTO('Tabla 1'[Columna compartida]), DISTINTO('Tabla 2'[Columna compartida])))
Entonces, el uso de relaciones de muchos a muchos en las tablas 1 y 2 funciona.

View solution in original post

3 REPLIES 3
Syndicate_Admin
Administrator
Administrator

Descubrí un error en mi tabla original, usando mi primera tabla:

Tabla compartida=
DISTINTO(UNIÓN(
DISTINTO('Tabla 1'[Columna compartida]), DISTINTO('Tabla 2'[Columna compartida])))
Entonces, el uso de relaciones de muchos a muchos en las tablas 1 y 2 funciona.
Syndicate_Admin
Administrator
Administrator

Hola @trevordunham ,

Es posible que deba crear una nueva tabla con valores únicos y usarlos en la segmentación para filtrar los datos (esto puede funcionar, ya que esta es una de las formas para este tipo de situaciones similares)

La tabla se puede crear utilizando el siguiente DAX:

SharedTable = UNION(DISTINCT('Table1'[Shared Column]), DISTINCT('Table2'[Shared Column]))

A continuación, cree una expresión de filtro para filtrar los datos de los objetos visuales mediante el siguiente DAX:

FilteredData = 
FILTER(
    'Table1',
    'Table1'[Shared Column] IN VALUES(SharedTable[Shared Column])
)

Si esta publicación ayuda, considere aceptarla como la solución para ayudar a otros miembros a encontrarla más rápidamente. ¡¡Gracias!!

Gracias @Kishore_KVN

Esto no parece estar funcionando. Su tabla sugerida es lo que intenté inicialmente, pero la expresión de filtro no tiene sentido para mí. Esto solo filtra la tabla 1, necesito una columna que funcione para ambas tablas. También recibo el siguiente error al intentar crear la expresión de filtro: "La expresión hace referencia a varias columnas. No se pueden convertir varias columnas en un valor escalar.

Helpful resources

Announcements
RTI Forums Carousel3

New forum boards available in Real-Time Intelligence.

Ask questions in Eventhouse and KQL, Eventstream, and Reflex.

MayPowerBICarousel1

Power BI Monthly Update - May 2024

Check out the May 2024 Power BI update to learn about new features.