Diseño Web, Registro de dominio y Hospedaje Web

viernes, 2 de abril de 2010

¿Obtener la fecha y hora en MySQL?


Obtener solo día mes y año en MySQL


fecha y hora en MySQL Código :
select now(); # ejemplo: '2010-01-12 10:50:43'


Obtener solo día mes y año en MySQL


Código :

select CURDATE(); # ejemplo: '2010-01-12' #sin hora




Obtener hora actual en MySQL


Código :

select curTime(); #Selecciona la hora




Obtener día, mes, año, u hora de una fecha en MySQL


El formato de la fecha debe ser YYYY-MM-DD HH:MM:SS, aunque para obtener el año, mes o día solo es necesario YYYY-MM-DD


Código :

select YEAR(NOW()); #Selecciona el año

select MONTH (NOW()) as mes; #Selecciona el mes

select DAY(NOW()) as dia; #Selecciona el día

select TIME(NOW()) as hora; #Selecciona la hora

Select LAST_DAY(NOW()); # Selecciona el ultimo dia del mes


También existe MICROSECOND, SECOND, MINUTE, HOUR, MONTHNAME, etc.

Dar formato a una fecha en MySQL


Para esto usamos Date_format, DATE_FORMAT(fecha,formato); ejemplo:


Código :

select Date_format(now(),'%Y/%M/%d'); # '2010/January/12'

select Date_format(now(),'%Y-%M-%d %h:%i:%s %p'); #'2010-January-12 12:34:29 AM'

select Date_format(now(),'%W %d %M %Y'); # 'Tuesday 12 January 2010'

select Date_format(now(),'El año actual es %Y'); # 'El año actual es 2010'



Estos son algunos de los especificadores que tenemos disponibles para dar formato a una fecha, la lista completa pueden verla en los manuales de MySql:

Código :

- %d #Día del mes numérico (00...31)

- %H #Hora (00...23)

- %h #Hora (01...12)

- %i #Minutos, numérico (00...59)

- %M #Nombre mes (January...December)

- %m #Mes, numérico (00...12)

- %p #AM o PM

- %W #Nombre día semana (Sunday...Saturday)

- %Y #Año, numérico, cuatro dígitos

- %y #Año, numérico (dos dígitos)

- %s #Segundos (00...59)






Sumar o restar días a una fecha con DATE_ADD o DATE_SUB en MySQL



DATE_ADD(fecha,INTERVAL valor tipo), DATE_SUB(fecha,INTERVAL valor tipo)


Sumar tiempo en MySQL


Código :

select DATE_ADD(NOW(),INTERVAL 20 DAY); # Agrega 20 días a la fecha actual

select DATE_ADD(NOW(),INTERVAL 30 MINUTE); # Agrega 30 minutos a la fecha actual

select DATE_ADD(NOW(),INTERVAL 50 YEAR); #Agrega 50 años a la fecha actual

select DATE_ADD(NOW(),INTERVAL '10-5' YEAR_MONTH); #Agrega 10 años 5 meses a la fecha actual




Restar tiempo en MySQL



Código :

select DATE_SUB(NOW(),INTERVAL 8 YEAR); #Resta 8 años a la fecha actual

select DATE_SUB(NOW(),INTERVAL 24 HOUR); #Resta 24 horas a la fecha actual

select DATE_SUB(NOW(),INTERVAL '7-2' YEAR_MONTH); #Resta 7 años dos meses a la fecha actual



Estos son algunos de los argumentos que podemos usar, para una lista completa consulten los manuales de MySql

Código :

SECOND #Segundos

MINUTE #Minutos

HOUR #Horas

DAY #Días

MONTH #Meses

YEAR #Años

YEAR_MONTH #'Años-meses'

DAY_HOUR #'Días Horas'






Restar dos fechas


DATEDIFF(fecha_1,fecha_2) devuelve el número de días entre la fecha fecha_1 y la fecha_2


Código :

SELECT DATEDIFF(NOW(),'2002-11-02'); #cuantos días han pasado

SELECT DATEDIFF(NOW(),'2010-03-20'); #Cuantos días faltan



No hay comentarios: