timestamp de 10 dígitos...

Iniciado por dimitrix, 19 Enero 2015, 03:46 AM

0 Miembros y 1 Visitante están viendo este tema.

dimitrix

Pues mi problema creo que debe ser bastante normal...

Tengo montado un sistema que guarda en una columna llamada  "times" el timestamp, es decir los 10 dígitos por ejemplo (1415192456).

He visto que existen funciones para guardar la fecha, pero mi pregunta es ¿Existe alguna para guardar el timestamp? Y de no existir... ¿Por qué?

Y no, no me sirve hacer una función en PHP para convertirlo...




Gh057

#1

Hola dimitrix, necesitarías en mysql hacer uso del now por ejemplo (te indique recién current_timestamp pero te tirara error ya que permite uno por tabla...), mas info en
http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html
saludos
perdón... 10 dígitos? como seria el formato?
aaaah ahora caigo jejeje (debe ser el sueño) te estas refiriendo solo a la hora, a poder guardar milisegundos... bueno de forma nativa no hay nada al respecto. en el mismo sitio hacen referencia a ese bug, hay una solución que es agregar una columna para los decimales y de esa forma luego tomarla con timestamp...
4 d0nd3 1r4 3l gh057? l4 r3d 3s 74n v4s74 3 1nf1n1t4...

MinusFour

Yo no acabo de entende dices que tienes en un sitema una columna llamada times que guarda el timestamp y luego preguntas que si existe alguna funcion para guardar el timestamp. ¿Que no lo haces ya?

Gh057

#3
Según entendí, guarda los diez dígitos, pero se los debe dejar en cero los últimos...(si toma de a dos dígitos para  días horas minutos segundos y milisegundos) El problema esta tratado en el mismo sitio. (ya hace varios años... sinceramente no se porque no lo han corregido) Una posible solución es como indicaba hacer un campo decimal, pasarle el valor 1415192,456 y tomarlo luego por ejemplo con time...

(agrego) acabo de probar y no le encuentro la vuelta para hacerlo con tan pocos dígitos... solo completando el campo decimal con 17 (incluyes el año y el dia), de los cuales tomas 3 para las milésimas. Ahí si ya puedes truncar la salida al cronometro consultando con time. Sino explota todo jej Me voy a dormir! en un rato vuelvo XD
4 d0nd3 1r4 3l gh057? l4 r3d 3s 74n v4s74 3 1nf1n1t4...

dimitrix





Gh057

jajaajaa bueno me alegro haber dado en el punto con la referencia... y que me haya ido a dormir, porque sino seguía delirando XD un cordial saludo
4 d0nd3 1r4 3l gh057? l4 r3d 3s 74n v4s74 3 1nf1n1t4...

JorgeEMX

Yo lo que no entiendo es para que quieres guardar timestamps tal cuál pudiendo guardarlo en formato normal, en un capo timestamp, que cualquier humano entendería (aparte de hacer consultas más fácil). Como sea,  si es algo más técnico cualquier lenguaje de programación podrías obtenerlo y jugar, a partir de ahí, con lo que quisieras.

Saludos

dimitrix

Cita de: JorgeEMX en 23 Enero 2015, 04:57 AM
Yo lo que no entiendo es para que quieres guardar timestamps tal cuál pudiendo guardarlo en formato normal, en un capo timestamp, que cualquier humano entendería (aparte de hacer consultas más fácil). Como sea,  si es algo más técnico cualquier lenguaje de programación podrías obtenerlo y jugar, a partir de ahí, con lo que quisieras.

Saludos

Bueno, el timestamp te da hasta el segundo exacto. Realmente para lo que lo voy a usar necesito el timestamp, si fuera un log o algo así me daría más igual.




Gh057

#8
Así es dimitrix. Ya sabes, si necesitas de las milésimas, el campo donde guardas el tiempo debe ser de tipo decimal de 17 dígitos (guardas tanto el año como el día y el tiempo en  sí) y defines 3 de ellos para las milésimas. guardas el tiempo en crudo (ejemplo 20150122111915.435) y lo tomas con TIME. (traerá algo como 11:19:15.435)
saludos
4 d0nd3 1r4 3l gh057? l4 r3d 3s 74n v4s74 3 1nf1n1t4...

JorgeEMX

Cita de: dimitrix en 23 Enero 2015, 15:11 PM
Bueno, el timestamp te da hasta el segundo exacto. Realmente para lo que lo voy a usar necesito el timestamp, si fuera un log o algo así me daría más igual.

A partir de la versión 5.6.4 MySQL soporta microsegundos.