¿Qué se data en MySQL?

¿Qué se data en MySQL?
MySQL es una de las bases de datos más populares del mundo. Independientemente de la industria, MySQL es ampliamente adoptado para sus características. Es un RDBMS de código abierto (sistema de gestión de bases de datos relacionales). Los datos se organizan en tablas que pueden estar relacionadas entre sí. Incorpora SQL para realizar varias acciones de base de datos.

En esta guía, veremos una de esas funciones. Demostrará cómo usar la función de fecha en mysql.

El fatediff () en SQL

La función de calificación está disponible como parte del lenguaje de consulta SQL. En MySQL, la función fatediff () toma dos fechas como entrada, calcula la diferencia y devuelve el número de fechas entre las dos fechas.

Así es como se ve la estructura básica de la función.

$ Datediff (Expression_1, Expression_2)

Aquí,

  • Expression_1: la primera fecha
  • Expression_2: la segunda fecha

La expresión puede ser de cualquiera de los siguientes formatos.

  • tiempo
  • fecha
  • fecha y hora
  • DateTime2
  • tiempo pequeño
  • DateTimeOffset

En SQL estándar, sin embargo, Datediff () es ligeramente diferente. También admite un parámetro adicional para especificar la parte de la fecha para trabajar en.

$ Datediff (date_part, Expression_1, Expression_2)

Aquí,

date_part: describe en qué fecha la parte debe calcular la función. Por defecto, el valor se establece en días. Sin embargo, también admite valores adicionales. Estos valores date_part también tienen abreviaturas adecuadas.

  • mes ("mm" o "m")
  • año ("yy" o "aaa")
  • Quarter ("QQ" o "Q")
  • Día ("DD" o "D")
  • Semana ("WK" o "WW"
  • Dayofyear ("Dy" o "Y")
  • hora ("HH")
  • minuto ("MI" o "M")
  • Segundo ("SS" o "S")
  • milisegundo ("MS")
  • Microsegundo ("MCS")
  • Nanosegundo ("NS")

La función fatediff () también viene con una limitación de rango. El valor calculado de la diferencia de fecha debe estar dentro del rango de entero (-2,147,483,647 a 2,147,483,648).

Uso de Datediff ()

En esta sección, veremos varias formas de usar la función. Para la demostración, un servidor MySQL se establece con PhPMyAdmin para facilitar el uso. Consulte esta guía sobre la configuración de phpmyadmin en ubuntu.

Uso básico

Desde la pestaña SQL, ejecute la siguiente consulta.

$ Select Datediff ('2090-10-11', '2020-10-10') como 'resultado';

Como muestra la salida, la diferencia entre las fechas especificadas es de 25568 días.

Comparando con una fecha anterior

¿Qué pasaría si la segunda fecha fuera más tarde de la primera fecha?? Intercambiar los valores y probarlos.

$ Select Datediff ('2020-10-10', '2090-10-11') como 'resultado';

Como podemos ver, todavía muestra 25568 días. Sin embargo, el valor es negativo. Es una diferencia crucial tener en cuenta al implementar esta función en cualquier script/consulta SQL.

Valores de fecha y hora

La función Datediff () también acepta valores de fecha y hora como parámetro. Se espera que los valores de tiempo estén en formato las 24 horas.

$ Select Datediff ('2090-10-11 23:59:59', '2020-10-10 00:00:00') como 'result_1';
$ Select Datediff ('2090-10-11 00:00:00', '2020-10-10 23:59:59') como 'result_2';

Tenga en cuenta que el valor de tiempo adicional no afecta el resultado del cálculo. La función solo se centra en la fecha.

Trabajar con valores de fecha incorrectos

Si los valores de la fecha son incorrectos, entonces Datediff () devolverá el valor nulo. Para mostrar, ingrese una fecha no válida a cualquiera de los parámetros.

$ Select Datediff ('2099-99-99', '2020-20-20') como 'resultado'

Como se esperaba, el valor de retorno es nulo.

Combinando fatediff () con curdate ()

La función curdate () devuelve la fecha actual de la máquina. No se necesita parámetro. Obtenga más información sobre el uso de Curdate () para insertar la fecha y hora actuales en MySQL.

Usando Curdate (), podemos encontrar la diferencia entre el presente y la fecha objetivo. Por ejemplo, comparemos la fecha actual con un día en el pasado.

$ Select Datediff (Curdate (), '1980-10-10') como 'resultado'
$ Select Datediff ('2077-01-01', curdate ()) como 'resultado'

Tenga en cuenta que hay funciones adicionales, por ejemplo, current_date (), que actúan de la misma manera que Curdate (). En situaciones, ambos pueden ser intercambiados.

$ Select Datediff (current_date (), '1980-10-10') como 'resultado'

Usar Datediff () con tablas

Hasta ahora, hemos implementado comandos simples de fatediff () para demostrar sus usos. Es hora de ponerlo en acción.

He tomado una base de datos de muestra que contiene varias información sobre una determinada compañía y sus empleados para la demostración. La base de datos de muestra está directamente disponible desde aquí. Seleccionaremos el primer y apellido de los empleados de esta base de datos y descubriremos cuánto tiempo han estado funcionando hasta ahora.

$ Select First_Name, Last_Name, Datediff (Curdate (), Hire_Date) como 'Días trabajados' de los empleados;

Pensamientos finales

Esta guía demuestra con éxito el uso de la función Datediff () en MySQL. Calcula la diferencia entre dos fechas y devuelve el valor como el número de días. Todas las demostraciones ayudan a comprender el proceso de trabajo de la función de fechado.

Para obtener más información sobre MySQL, verifique estas guías sobre la creación de tablas, renombrar tablas, administrar los privilegios de los usuarios, etc.

Computación feliz!