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

Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!

Reply
Syndicate_Admin
Administrator
Administrator

Hacer coincidir 2 fuentes de datos por último keyid

Hola, tengo 2 tablas que contienen PCName, KeyID, KeyDateTime para 2 fuentes de copia de seguridad de datos diferentes A y B, donde los PCNames están relacionados muchos: muchos. Pueden existir varios KeyID para un PCName y los KeyID pueden o no existir en ambos orígenes.

Quiero consultar el KeyID más reciente de KeyDateTime para que PCName exista en ambos orígenes de datos que son compatibles, de lo contrario, informe si la tabla A o B tiene un KeyID más reciente que solo existe en cualquiera de las tablas.

¿Alguna idea sobre cómo abordar esto?

1 REPLY 1
Syndicate_Admin
Administrator
Administrator

@anthony_dobson ,

De acuerdo con su descripción, creo una muestra.

TablaA:

vyanjiangmsft_0-1685353599670.png

Tabla B:

vyanjiangmsft_1-1685353632167.png

Aquí está mi solución, crear una medida:

Latest_keyID =
MAXX (
    FILTER (
        'TableA',
        'TableA'[KeyID]
            = MAXX (
                FILTER (
                    ALL ( 'TableB' ),
                    'TableB'[PCName] = MAX ( TableA[PCName] )
                        && 'TableB'[KeyDateTime]
                            = MAXX (
                                FILTER ( ALL ( 'TableB' ), 'TableB'[PCName] = MAX ( TableA[PCName] ) ),
                                'TableB'[KeyDateTime]
                            )
                ),
                'TableB'[KeyID]
            )
    ),
    'TableA'[KeyID]
)

Obtenga el KeyID más reciente de KeyDateTime para el PCName existe en ambas fuentes de datos:

vyanjiangmsft_2-1685354133856.png

Si desea contar el número de PCName que cumplen la condición anterior, cree una medida:

Measure =
CALCULATE (
    DISTINCTCOUNT ( 'TableA'[PCName] ),
    FILTER (
        ALL ( 'TableA' ),
        'TableA'[KeyID]
            = MAXX (
                FILTER (
                    ALL ( 'TableB' ),
                    'TableB'[PCName] = EARLIER ( TableA[PCName] )
                        && 'TableB'[KeyDateTime]
                            = MAXX (
                                FILTER ( ALL ( 'TableB' ), 'TableB'[PCName] = EARLIER ( TableA[PCName] ) ),
                                'TableB'[KeyDateTime]
                            )
                ),
                'TableB'[KeyID]
            )
    )
)

Obtenga el resultado correcto:

vyanjiangmsft_3-1685354494721.png

Adjunto mi muestra a continuación para su referencia.

Saludos

Apoyo a la comunidad Team_yanjiang

Si este post Ayuda, entonces por favor considere Acéptalo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

Helpful resources

Announcements
April AMA free

Microsoft Fabric AMA Livestream

Join us Tuesday, April 09, 9:00 – 10:00 AM PST for a live, expert-led Q&A session on all things Microsoft Fabric!

March Fabric Community Update

Fabric Community Update - March 2024

Find out what's new and trending in the Fabric Community.

Top Solution Authors