JClishe
Estoy extrayendo datos que están formateados como segundos y estoy tratando de convertirlos a hh: mm: ss pero no puedo entenderlo. Busqué aquí y encontré varios otros hilos con preguntas similares, pero incluso después de leer las sugerencias, todavía no puedo hacerlo bien.
Creé una nueva columna que toma la columna original y la divide por 3600, y le di formato a esa nueva columna como decimal. Eso funciona, pero no es el formato que quiero. Cuando intento formatear la nueva columna que creé, o la columna original, usando cualquiera de los formatos de hora, la visualización nunca es correcta.
¿Alguien puede explicar cómo hacer esto en términos muy simples? No tengo mucha experiencia con PBI Desktop, lo que probablemente sea obvio. 🙂
MarcelBeug
En respuesta a JClishe
En el Editor de consultas,
abre tu consulta,
vaya a la pestaña «Agregar columna»
elija «Columna personalizada»
ingrese el nombre de la columna y la fórmula
elige OK
ajuste el código agregando «, escriba la hora».
Anónimo
Hola,
He preparado un artículo detallado para convertir Segundos al formato hh: mm: ss en power bi.
https://www.powerbitalks.com/2019/12/convert-seconds-to-hhmmss-format.html
Tiene información completa con solución paso a paso.
Saludos,
Kaushlendra Mishra
www.powerbitalks.com
Anónimo
La forma más sencilla de hacer esto será asegurarse de que la columna esté formateada en el tipo de datos de «Hora». Puede cambiar el tipo de datos desde la cinta en la pestaña de modelado. El proceso para hacer esto es seleccionar la columna en su tabla de datos (lo más fácil desde la Vista de datos) y cambiar el tipo de datos a «Hora». Una vez que el tipo de datos se cambia a hora, puede cambiar el formato a «hh: mm: ss» en el menú desplegable directamente debajo.
Los problemas comunes que tendrá aquí es lograr que Power BI asigne adecuadamente su valor al nivel correcto de detalle (es decir, clasificarlo como segundos en lugar de minutos u horas). Ya ha reconocido el deseo de dividir entre 3600, por lo que es probable que esté en el camino correcto. No estoy seguro de por qué está usando 3600, pero asumiré que se relaciona con el formato en el que se encuentran actualmente sus datos de tiempo.
Para aclarar cómo puede garantizar la mejor transición. DateTime se almacena como un número decimal, el componente numérico entero del valor constituye la fecha. El número decimal es el componente de tiempo, donde 0 es medianoche y 1 la otra medianoche, por lo que 0.5 es mediodía. 1 segundo, como un número entero, se puede convertir a 1 segundo en DateTime dividiéndolo por 24 (horas en el día), dividiendo nuevamente por 60 (minutos en hora) y luego nuevamente por 60 (segundos en minutos). Para simplificar, tome sus segundos como un número entero y divídalos por 86,400 (24 x 60 x 60)
Militambe3171
En respuesta a Anónimo
Esta solucion no me funciona, mi columna esta en segundos
Cuando probé tu solución, no se agrega
JClishe
En respuesta a Anónimo
Cambié el tipo de datos de la columna a Tiempo, pero como indiqué en mi publicación original, no se muestra correctamente. Cuando uso Time y selecciono hh: mm: ss o cualquiera de las otras opciones, solo obtengo todos ceros.
A su pregunta de por qué dividí entre 3600, es porque dividir los segundos por ese número me dará horas en decimales. Esto no es lo que quiero en última instancia, pero es una medida provisional hasta que pueda averiguar cómo mostrarlo como h: mm: ss. Entonces, en lugar de un campo que dice 5276 segundos, ahora tengo un campo que dice 1,46 horas, que es mucho más fácil de interpretar para mí. Una vez más, esto no es lo que quiero, pero es mejor que unos segundos.
MarcelBeug
En respuesta a JClishe
Si una solución de Power Query también está bien:
let Source = #table(type table[Seconds = Int64.Type],{{5276}, {12675}, {76538}}), #"Added Custom" = Table.AddColumn(Source, "Time", each #time(0,0,0) + #duration(0,0,0,[Seconds]), type time) in #"Added Custom"
JClishe
En respuesta a MarcelBeug
¿Cómo usaría esto?
MarcelBeug
En respuesta a JClishe
En el Editor de consultas,
abre tu consulta,
vaya a la pestaña «Agregar columna»
elija «Columna personalizada»
ingrese el nombre de la columna y la fórmula
elige OK
ajuste el código agregando «, escriba la hora».
yuvaraj86
En respuesta a MarcelBeug
Gracias marcel esto fue útil
84gopi
En respuesta a MarcelBeug
Hola,
Tengo un campo de valor de segundos que se calculó a través de SQL, necesito saber cómo convertir este campo en formato hh: mm: ss y luego hacer la suma en el campo de resultado.
Probamos a través de SQL usando la función convert y varchar, pero después de la conversión no pude hacer SUM en el campo.
¿Alguien puede ayudarme sobre cómo conseguir esto?
84gopi
En respuesta a MarcelBeug
¿Cómo obtener la suma en el segundo campo de valor hh: mm: ss? Tengo un campo que está en segundos, cuando intenté cambiar la hora de los datos a HORA … Recibo un mensaje de advertencia para corregir esto como … ¿Hay alguna forma de convertir el valor del campo Segundos al formato HH: mm: ss y luego de nuevo haciendo la suma en el campo hh: mm: ss en POWER BI?
Intenté con SQL pero todavía no lo entiendo … por favor ayuda