Título: [MySQL] Dividir atributo en dos Publicado por: Kasswed en 9 Mayo 2011, 00:35 am Hola,
busco alguna manera de hacer lo siguiente. Tengo un atributo en mi DB que es la fecha y la hora, es así: "2011-05-08 23:30:32" Es decir, fecha y hora separados por un espacio. Necesito meter la hora o la fecha en otro campo aparte, ¿es posible hacerlo automáticamente con alguna sentencia SQL? En principio supongo que tengo que crear un nuevo campo, que sea la hora, y luego no sé cómo haría para meter la hora automáticamente, sin usar PHPs ni cosas de esas. Ah otra cosa, ¿se pueden hacer comparaciones con la hora? 23:30:32 > 23:00:09 y cosas así? Gracias! Título: Re: [MySQL] Dividir atributo en dos Publicado por: Shell Root en 9 Mayo 2011, 02:49 am Tienes que hacer obligatoriamente en MySQL o estáis usando algún lenguaje de programación?
Como en MySQL no existe la función SPLIT(), quizás puedas implementar una función creada. :http://forums.mysql.com/read.php?60,78776,78776 Título: Re: [MySQL] Dividir atributo en dos Publicado por: Nakp en 9 Mayo 2011, 03:01 am pues existen los campos de tipo date o time (ademas de datetime) y la funcion substr (http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_substr) ademas de las funciones datediff (http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_datediff), date (http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_date), time (http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_time), timediff (http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_timediff), y otro sinfin :)
Título: Re: [MySQL] Dividir atributo en dos Publicado por: cassiani en 9 Mayo 2011, 03:12 am Tengo un atributo en mi DB que es la fecha y la hora, es así: "2011-05-08 23:30:32" Es decir, fecha y hora separados por un espacio. Necesito meter la hora o la fecha en otro campo aparte, ¿es posible hacerlo automáticamente con alguna sentencia SQL? Ah otra cosa, ¿se pueden hacer comparaciones con la hora? 23:30:32 > 23:00:09 y cosas así? yo lo haría así: suponiendo que tienes los siguientes datos: Código: mysql> select * from tabla_ejemplo1; uso las funciones LEFT y RIGHT Código
devuelve: Código: +--------+--------+------------+----------+ Ah otra cosa, ¿se pueden hacer comparaciones con la hora? 23:30:32 > 23:00:09 y cosas así? En ese caso puedes usar between Código
espero te sirva. Título: Re: [MySQL] Dividir atributo en dos Publicado por: Kasswed en 10 Mayo 2011, 00:44 am Ya lo arreglé con las funciones DATE() y TIME()!
Gracias a todos! |