Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

leer fecha en tiempo unix

Estas en el tema de leer fecha en tiempo unix en el foro de Mysql en Foros del Web. Tengo en una base de datos mysql un campo fecha que guarda la fecha en tiempo unix o sea aparecen numeros en vez de fecha ...
  #1 (permalink)  
Antiguo 28/09/2013, 20:43
Avatar de don_fransisco  
Fecha de Ingreso: junio-2004
Mensajes: 193
Antigüedad: 19 años, 9 meses
Puntos: 1
leer fecha en tiempo unix

Tengo en una base de datos mysql un campo fecha que guarda la fecha en tiempo unix o sea aparecen numeros en vez de fecha (1112223542) tengo que extraer un intervalo de tiempo a traves de una consulta pero no se como hacerlo

coloco esto y no me funciona

select* from tabla where fecha between "01/09/2013" and "28/09/2013"

como puedo hacer un select que extraiga un intervalo de tiempo si la fecha esta en tiempo unix


cualquier ayuda agredecere
__________________
www.webeconomicas.cl
  #2 (permalink)  
Antiguo 29/09/2013, 07:33
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: leer fecha en tiempo unix

Manual de referencia: MySQL 5.0 Reference Manual :: 12 Funciones y operadores :: 12.5 Funciones de fecha y hora
Cita:
FROM_UNIXTIME(unix_timestamp) , FROM_UNIXTIME(unix_timestamp,format)

Retorna una representación del argumento unix_timestamp como un valor en formato 'YYYY-MM-DD HH:MM:SS' o YYYYMMDDHHMMSS , dependiendo de si la función se usa en un formato numérico o de cadena de caracteres.

Código MySQL:
Ver original
  1. mysql> SELECT FROM_UNIXTIME(875996580);
  2.         -> '1997-10-04 22:23:00'
  3. mysql> SELECT FROM_UNIXTIME(875996580) + 0;
  4.         -> 19971004222300

Si se da format, el resultado se formatea según la cadena format. format puede contener los mismos especificadores que los listados en la entrada para la función DATE_FORMAT() .
Código MySQL:
Ver original
  1.     ->                      '%Y %D %M %h:%i:%s %x');
  2.         -> '2003 6th August 06:22:58 2003'
Esto que estás usando:
Código MySQL:
Ver original
  1. select* from tabla where fecha between "01/09/2013" and "28/09/2013"
jamás te funcionará por dos razones:Primero, porque las fechas en BBDD no se almacenan en un formato DD/MM/AAAA, sino AAAA-MM-DD. El por qué requeriría bastante, pero en esencia se hace así porque se almacenan como binarios de punto flotante, entre otras cosas para optimizar las búsquedas.
En segundo lugar, MySQL interpreta las comillas (") de forma diferente, en función a la configuración del servidor, pero por lo general no se usa para encerrar cadenas de texto. Para ese fin se usan apóstrofos ('). Por ello puede darte un error sintáctico que no es sencillo de comprender.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: campo, fecha, select, sql, tabla, tiempo, unix
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:11.