Formatos de fechas mysql
Esta sección describe las funciones que pueden usarse para manipular valores temporales. Consulte Sección 11.3, “Tipos de fecha y hora” para una descripción del rango de los valores que tiene cada fecha y hora y los formatos válidos en que se puedene especificar los valores.
Aquí hay un ejemplo que usa funciones de fecha. La siguiente consulta selecciona todos losregistros con un valor date_col dentro de los últimos 30 días:
mysql> SELECT something FROM tbl_name
-> WHERE DATE_SUB(CURDATE(),INTERVAL 30 DAY) SELECT DATE_ADD('1998-01-02', INTERVAL 31 DAY);
-> '1998-02-02'
mysql> SELECT ADDDATE('1998-01-02', INTERVAL 31 DAY);
-> '1998-02-02'
Si el argumento days es simplemente un valor entero, entonces MySQL 5.0 lo trata como el númerode días a añadir a expr.
mysql> SELECT ADDDATE('1998-01-02', 31);
-> '1998-02-02'
• ADDTIME(expr,expr2)
ADDTIME() añade expr2 a expr y retorna el resultado. expr es una expresión de fecha u hora y fecha, y expr2 es una expresión temporal.
mysql> SELECT ADDTIME('1997-12-31 23:59:59.999999',
-> '1 1:1:1.000002');
-> '1998-01-02 01:01:01.000001'
mysql>SELECT ADDTIME('01:00:00.999999', '02:00:00.999998');
-> '03:00:01.999997'
• CONVERT_TZ(dt,from_tz,to_tz)
CONVERT_TZ() convierte un valor datetime dt de la zona horaria dada por from_tz a la zona horaria dada por to_tz y retorna el valor resultante. Las zonas horarias pueden especificarse como se describe en Sección 5.9.8, “Soporte de zonas horarias en el servidor MySQL”. Esta funciónretorna NULL si los argumentos son inválidos.
Si el valor se sale del rango soportado por el tipo TIMESTAMP al convertirse de from_tz a UTC, no se realiza ninguna conversión. El rango TIMESTAMP se describe en Sección 11.1.2, “Panorámica de tipos de fechas y hora”.
mysql> SELECT CONVERT_TZ('2004-01-01 12:00:00','GMT','MET');
-> '2004-01-01 13:00:00'
mysql> SELECT CONVERT_TZ('2004-01-0112:00:00','+00:00','+10:00');
-> '2004-01-01 22:00:00'
Nota: Para usar zonas horarias con nombres tales como 'MET' o 'Europe/Moscow', las tabas de zona horaria deben estar actualizadas correctamente. Consulte Sección 5.9.8, “Soporte de zonas horarias en el servidor MySQL” para instrucciones.
• CURDATE()
Retorna la fecha horaria como valor en formato 'YYYY-MM-DD' o YYYYMMDD,dependiendo de si la fucnión se usa en un contexto numérico o de cadena de caracteres.
mysql> SELECT CURDATE();
-> '1997-12-15'
mysql> SELECT CURDATE() + 0;
-> 19971215
• CURRENT_DATE, CURRENT_DATE()
CURRENT_DATE y CURRENT_DATE() son sinónimos de CURDATE().
• CURTIME()
Retorna la hora actual como valor en formato 'HH:MM:SS' o HHMMSS dependiendo de si la fucnión se usa en uncontexto numérico o de cadena de caracteres.
mysql> SELECT CURTIME();
-> '23:50:26'
mysql> SELECT CURTIME() + 0;
-> 235026
• CURRENT_TIME, CURRENT_TIME()
CURRENT_TIME y CURRENT_TIME() son sinónimos de CURTIME().
• CURRENT_TIMESTAMP, CURRENT_TIMESTAMP()
CURRENT_TIMESTAMP() son sinónimos de NOW().
• DATE(expr)
Extrae la parte de fecha de la expresión de fecha o fecha yhora expr.
mysql> SELECT DATE('2003-12-31 01:02:03');
-> '2003-12-31'
• DATEDIFF(expr,expr2)
DATEDIFF() retorna el número de días entre la fecha inicial expr y la fecha final expr2. expr y expr2 son expresiones de fecha o de fecha y hora. Sólo las partes de fecha de los valores se usan en los cálculos.
mysql> SELECT DATEDIFF('1997-12-31 23:59:59','1997-12-30');
-> 1
mysql>SELECT DATEDIFF('1997-11-30 23:59:59','1997-12-31');
-> -31
• DATE_ADD(date,INTERVAL expr type), DATE_SUB(date,INTERVAL expr type)
Estas funciones realizan operaciones aritméticas de fechas. date es un valor DATETIME o DATE especificando la fecha de inicio. expr es una expresión que especifica el intervalo a añadir o borrar de la fecha de inicio. expr es una cadena; puede comenzar...
Regístrate para leer el documento completo.