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

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
AndyNeo
Regular Visitor

DateDiff de 2 tablas [no puede ser tan difícil :)]

Hola a todos

Primer post y un poco de novato!!!!! Así que ten paciencia conmigo..... Tengo 2 tablas de datos que es básicamente el mismo. Un conjunto de datos es solo 2 semanas más antiguo.

Lo que estoy tratando de hacer una diferencia de fecha entre el 2.

Tabla 1

Nombre del equipo

Fecha escaneada

Tabla2

Nombre del equipo

Fecha escaneada

Estoy tratando de averiguar la diferencia de fecha entre la fecha escaneada. Hay una relación entre las tablas basada en el nombre del equipo... Hay otras medidas, campos calculados, etc. en el Cuadro 1

He probado varias variaciones de DateDiff incluyendo añadir relacionados / MAX / MIN etc etc y todavía atascado....

Básicamente quiero hacer en la Mesa 2 un

DayDifferent á DATEDIFF(Table1[Fecha escaneada], Table2[Fecha escaneada],DAYS) <-- este es un ejemplo btw....

No listará el campo Tabla1 y sólo calculó los campos si hago algo esto....

Relacionado arroja un problema de relación

y MAX sólo me da 1 números, ya que es obtener el valor MAX para la fecha.... cuando quiero que lo haga por todos ellos

¿Necesito poner en el nombre del equipo para que coincida con el ordenador IF de la tabla1y la tabla 2 es igual hacer una diferencia de fecha.....

Completamente atascado 😐 :S

Cualquier ayuda será muy aplaudido

1 ACCEPTED SOLUTION

Hola @AndyNeo ,

Si la relación es 1:1 o 1:*, puede crear la medida de diferencias como esta:

_Diff = 
DATEDIFF (
    CALCULATE (
        MAX ( 'Table 1'[Date Scanned] ),
        FILTER (
            ALL ( 'Table 1' ),
            'Table 1'[Computer Name] in DISTINCT('Table 2'[Computer Name])
        )
    ),
    MAX('Table 2'[Date Scanned]),
    DAY
)

Si la relación es *:*, es posible que desee calcualte el datediff para cada equipo de cada fila en la tabla2, en este caso, necesita crear una columna de índice en estas dos tablas como columna auxiliar en la consulta de energía (consulte los pasos de mi ejemplo siguiente), luego cree una medida como esta:

__Diff = 
DATEDIFF (
    CALCULATE (
        MAX ( 'Table_1'[Date Scanned] ),
        FILTER (
            ALL ( Table_1 ),
            'Table_1'[Computer Name]
                IN DISTINCT ( 'Table_2'[Computer Name] )
                    && 'Table_1'[Index] IN DISTINCT ( 'Table_2'[Index] )
        )
    ),
    CALCULATE (
        MAX ( 'Table_2'[Scanned] ),
        FILTER (
            ALL ( Table_2 ),
            'Table_2'[Computer Name]
                IN DISTINCT ( 'Table_1'[Computer Name] )
                    && 'Table_2'[Index] IN DISTINCT ( 'Table_2'[Index] )
        )
    ),
    DAY
)

left is 1:1, right is *:*izquierda es 1:1, la derecha es *:*

Adjunto un archivo de muestra en el siguiente, espera ayudarle.

Saludos
Equipo de apoyo a la comunidad _ Yingjie Li
Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

View solution in original post

4 REPLIES 4
Fowmy
Super User
Super User

@AndyNeo
¿Ha probado la función LOOKUPVALUE: https://docs.microsoft.com/en-us/dax/lookupvalue-function-dax

Vídeo: https://www.youtube.com/watch?v=iJfzfYt5Qws&t=0s

________________________

Si mi respuesta fue útil, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla

Haga clic en el icono Thumbs-Up si le gusta esta respuesta 🙂

Youtube Linkedin

Did I answer your question? Mark my post as a solution! and hit thumbs up


Subscribe and learn Power BI from these videos

Website LinkedIn PBI User Group

mahoneypat
Employee
Employee

Para tu nombre que si las dos tablas solo difieren en las fechas, debe anexar las dos tablas para tener una sola tabla en el modelo.

Para el modelo actual, si la relación es 1:1 o 1:Muchos de Table2 a Table1 (y están relacionados con el nombre del equipo), esta expresión debe funcionar como una columna calculada en la Tabla2

Diff - DATEDIFF(MAX(Table1[Fecha escaneada]), Table2[Fecha escaneada], DIA)

Una vez más, realmente debe anexar esas tablas, en las que necesitará una expresión diferente. Y le sugiero que haga este análisis como una medida, y no como una columna. Y agregue una tabla Date al modelo. Ok, basta de predicación.

saludos

palmadita





Did I answer your question? Mark my post as a solution! Kudos are also appreciated!

To learn more about Power BI, follow me on Twitter or subscribe on YouTube.


@mahoneypa HoosierBI on YouTube


Hola Pat

¿Estás diciendo que añadas las tablas y luego pruebes ese forumla....?

Si intento esa forumla como medida, ¿solo estoy obteniendo la lista de medidas existente para su uso en la fórmula?

Creo que el problema tal vez una tabla tiene 20000 filas y la otra tiene 20100 filas.....

Hola @AndyNeo ,

Si la relación es 1:1 o 1:*, puede crear la medida de diferencias como esta:

_Diff = 
DATEDIFF (
    CALCULATE (
        MAX ( 'Table 1'[Date Scanned] ),
        FILTER (
            ALL ( 'Table 1' ),
            'Table 1'[Computer Name] in DISTINCT('Table 2'[Computer Name])
        )
    ),
    MAX('Table 2'[Date Scanned]),
    DAY
)

Si la relación es *:*, es posible que desee calcualte el datediff para cada equipo de cada fila en la tabla2, en este caso, necesita crear una columna de índice en estas dos tablas como columna auxiliar en la consulta de energía (consulte los pasos de mi ejemplo siguiente), luego cree una medida como esta:

__Diff = 
DATEDIFF (
    CALCULATE (
        MAX ( 'Table_1'[Date Scanned] ),
        FILTER (
            ALL ( Table_1 ),
            'Table_1'[Computer Name]
                IN DISTINCT ( 'Table_2'[Computer Name] )
                    && 'Table_1'[Index] IN DISTINCT ( 'Table_2'[Index] )
        )
    ),
    CALCULATE (
        MAX ( 'Table_2'[Scanned] ),
        FILTER (
            ALL ( Table_2 ),
            'Table_2'[Computer Name]
                IN DISTINCT ( 'Table_1'[Computer Name] )
                    && 'Table_2'[Index] IN DISTINCT ( 'Table_2'[Index] )
        )
    ),
    DAY
)

left is 1:1, right is *:*izquierda es 1:1, la derecha es *:*

Adjunto un archivo de muestra en el siguiente, espera ayudarle.

Saludos
Equipo de apoyo a la comunidad _ Yingjie Li
Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

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

April Fabric Community Update

Fabric Community Update - April 2024

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