Día de la semana SQL

Día de la semana SQL

La fecha y la hora son significativas cuando se trabajan con datos. Nos permiten realizar un seguimiento de los cambios realizados en la base de datos dentro de intervalos de tiempo específicos.

Sin embargo, en las bases de datos SQL, debe especificar la fecha en su totalidad (i.mi., el año, el mes y la fecha.) Por lo tanto, si necesita acceder solo a una parte específica de la fecha, debe realizar una operación particular.

Este artículo analizará cómo podemos extraer el día de la semana de un valor de fecha utilizando tanto el herido como el SQL estándar.

Aunque algunos motores de bases de datos aún admiten Legacy SQL, recomendamos la opción de SQL estándar para garantizar la compatibilidad con los principales motores de base de datos.

Legacy SQL

El primer método que discutiremos es extraer el día de la semana usando Legacy SQL. Para esto, usaremos la función Dayofweek ().

Esta función toma un tipo de datos de marca de tiempo como argumento y devuelve el día de la semana. El valor de retorno es un tipo entero que varía de 1 a 7: donde 1 es el domingo, y siete es el sábado inclusive.

La sintaxis de la función es como se muestra a continuación:

DÍA DE LA SEMANA()

Esta función ilustrada en el siguiente ejemplo:

Seleccione el día (marca de tiempo ('2012-04-01 10:07:05')) como day_of_week;

La consulta anterior debe devolver un entero que indique el día de la semana. El ejemplo de salida es como se muestra:

día de la semana
1

SQL estándar.

A diferencia de Legacy SQL, Standard SQL nos proporciona una función para extraer varias partes de DateTime.

La función extract () extrae una parte específica de un tipo de marca de tiempo. La sintaxis de la función es como se muestra:

Extracto (parte de date_expression)

La función toma la parte para extraer la marca de tiempo. La parte puede incluir las siguientes opciones:

  1. DÍA DE LA SEMANA
  2. DÍA
  3. Día de día
  4. SEMANA
  5. SEMANA
  6. DÍA LABORABLE
  7. Isoweek
  8. MES
  9. CUARTO
  10. AÑO
  11. Isoyear

Para este tutorial, estamos interesados ​​en extraer el día de la semana para que podamos especificar la parte como Dayofweek.

La función debe devolver un valor entero que oscila entre 1 y 7.

Un ejemplo es como se muestra:

SELECCIONAR
Extracto (dayofweek desde la fecha '2022-04-01') como day_of_week;

La consulta anterior debe devolver la salida como:

día de la semana
6

Conclusión

Este artículo discutió dos métodos principales para extraer el día de la semana desde un objeto de fecha en Legacy y estándar SQL.