Calculo de semanas que hay entre 2 fechas

Tengo consulta y quiero calcular las semanas que hay entre 2 fechas

fecha_dia=28/01/2021  fecha_lote=17/12/2020 semanas=5

3 Respuestas

Respuesta
2

El problema de las fecha y por tanto de las semanas es la definición. Cuando usas Datediff, lo que hace es restar la semana "nominal" de la primera fecha y la semana "nominal" de la segunda. Y si lo que quieres saber es cuantos grupos de 7 días hay entre dos fechas tienes que hacer lo que te dice Gustavo.

Las fechas son una putada. Cuando dices, ¿Cuántos días hay entre el, por ejemplo, 01/01/2021 y el 05/01/2021? 

- Si cuentas desde las 00:0000000001 del 01 y termina a las 23:599999999 del 05, redondeando hay 5 días entre ellos.

- Si cuentas desde las 24:00 del día 01 hasta las 00:0000000001 del día 24, hay 3

- Si cuentas desde las 24:00 del día 01 hasta las 24:00 del día 05, (el día 24 lo trabajas prácticamente completo), te saldrían el 02,03,04,05, es decir 4

Con las semanas, se complica aún más

¿Cuántas semanas hay entre el 01/01/2021 y el 28. En buena lógica hay 3, la semana2, la semana 3 y la semana 4, ya que el 28 está en la 5 semana, pero redondeando hay 28 días que equivale a cuatro semanas ( y si no, que te lo diga el que ha trabajado esos 28 días).

Por eso, lo mejor es que adaptes la fórmula de diferencia de días a tu criterio.

Respuesta
2

La funcion datediff() le sirve Datediff("w","17/12/2020","28/01/2021)

Esto si es por código si es en consulta cambie la coma por punto y coma.

Perdón falta una w es

Datediff("ww", fe..., fec)

No entiendo porque dice que 5 semanas, si hago:

?Datediff("ww","17/12/2020","28/01/2021")
6

Obtengo 6 semanas

No se porque hay tercos que hablan por decir algo, es decir, Microsoft debe eliminar o modificar la función DateDiff(). Si vamos a la respuesta de Gustavo dice "hay 42 días y divido entre 7" lógico da 6, es lo que hace la función datediff(). ¿Entonces cuál es la inconsistencia?

Respuesta
2

No veo por qué te da 5, si hay 42 días entre esas fechas.

Directamente podés restar las dos fechas y al resultado dividirlo entre 7

Salu2

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas