Access - Y dale con las horas.

 
Vista:

Y dale con las horas.

Publicado por olvinho (3 intervenciones) el 06/09/2007 21:13:12
Hola primeramente gracias por tomarte la molestia de leer este mensaje, Tengo un Base de datos en el access, de pedidos y tengo 2 dudas
1)ahora tengo dos campos de tipo Fecha/Hora: Inicio y otro Fin, (la diferencia entre los dos generalmete es de horas), Entre los datos que generalmete solo hay diferencia de horas y no de dias, el acces este devueleve correctamente los resultados, pero cuando la diferencia es mas de 24 horas, por ejemplo 25 horas este devuelve 1:00, ¿Como hacer para que el acces devuelva: "1 dia 1:00"?.

2) Tengo un campo fecha/hora de este formato: dd/mm/aaaa hh:mm, pero quisiera q por medio de una consulta, crear un campo donde solo mostrar los minutos y segundos: hh:mm. ¿Como se hace? asi que por ejemplo estos serian mis resultados:

Ejemplo el campo contiene: 12/09/2007 14:00, solo quisiera que en un campo nuevo solo muestre 14:00.

Gracias de antemano.

saludos desde bolivia y espero ansiosamente sus respuestas.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Formatear diferencia de horas y extraer minutos y segundos

Publicado por Alejandro (4142 intervenciones) el 18/08/2023 18:00:47
1) Formatear diferencia de horas

Para mostrar la diferencia de horas en el formato "Días hh:mm", puedes utilizar una combinación de las funciones `INT` y `MOD` para calcular los días y las horas restantes. Aquí tienes cómo hacerlo:

1
2
3
4
SELECT
    DATEDIFF("d", [Inicio], [Fin]) & " días " &
    FORMAT([Fin] - [Inicio] - DATEDIFF("d", [Inicio], [Fin]), "h:nn") AS Diferencia
FROM TuTabla;

Reemplaza "TuTabla" con el nombre de tu tabla. Esta consulta calculará la diferencia entre las fechas de inicio y fin en días y horas, y luego formateará los resultados como "días hh:mm".

2) Extraer minutos y segundos

Puedes utilizar la función `FORMAT` para extraer los minutos y segundos de un campo de fecha/hora en el formato "hh:mm". Aquí tienes cómo hacerlo:

1
2
SELECT FORMAT([TuCampo], "hh:mm") AS MinutosYSegundos
FROM TuTabla;

Reemplaza "TuCampo" con el nombre de tu campo de fecha/hora y "TuTabla" con el nombre de tu tabla. Esta consulta creará un nuevo campo que muestra solo los minutos y segundos en el formato "hh:mm".

3) Combinar ambos en una consulta

Si deseas combinar ambas consultas en una sola para obtener los dos resultados al mismo tiempo, puedes hacerlo así:

1
2
3
4
5
SELECT
    DATEDIFF("d", [Inicio], [Fin]) & " días " &
    FORMAT([Fin] - [Inicio] - DATEDIFF("d", [Inicio], [Fin]), "h:nn") AS DiferenciaDias,
    FORMAT([TuCampo], "hh:mm") AS MinutosYSegundos
FROM TuTabla;

Asegúrate de ajustar los nombres de campos y tablas según tu base de datos.

Estas consultas te permitirán formatear la diferencia de horas y extraer los minutos y segundos de campos de fecha/hora en tu base de datos de Access.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar