Dia da semana do SQL

Dia da semana do SQL

Data e hora são significativas ao trabalhar com dados. Eles nos permitem acompanhar as alterações feitas no banco de dados em intervalos de tempo específicos.

No entanto, nos bancos de dados SQL, você precisa especificar a data integral (i.e., o ano, mês e data.) Portanto, se você precisar acessar apenas uma parte específica da data, você deve executar uma operação específica.

Este artigo analisará como podemos extrair o dia da semana a partir de um valor de data usando o SQL Legacy e Standard.

Embora alguns mecanismos de banco de dados ainda suportem o Legacy SQL, recomendamos a opção de SQL padrão para garantir a compatibilidade com os principais mecanismos de banco de dados.

SQL Legacy

O primeiro método que discutiremos é extrair o dia da semana usando o Legacy SQL. Para isso, usaremos a função DayofWeek ().

Esta função leva um tipo de dados de registro de data e hora como argumento e retorna o dia da semana. O valor de retorno é do tipo inteiro que varia de 1 a 7: onde 1 é domingo e sete é o sábado inclusive.

A sintaxe da função é como mostrado abaixo:

DIA DA SEMANA()

Esta função ilustrada no exemplo abaixo:

Selecione DIA (TIMESTAMP ('2012-04-01 10:07:05')) como Day_of_week;

A consulta acima deve retornar um número inteiro indicando o dia da semana. Exemplo de saída é como mostrado:

dia da semana
1

SQL padrão.

Diferentemente do SQL Legacy, o padrão SQL nos fornece uma função para extrair várias partes do datetime.

A função extract () extrai uma parte específica de um tipo de data e hora. A sintaxe da função é como mostrado:

Extrato (parte de Date_expression)

A função leva a parte para extrair o registro de data e hora. A peça pode incluir as seguintes opções:

  1. DIA DA SEMANA
  2. DIA
  3. Dayofyear
  4. SEMANA
  5. SEMANA
  6. Dia da semana
  7. Isoweek
  8. MÊS
  9. TRIMESTRE
  10. ANO
  11. Isoyear

Para este tutorial, estamos interessados ​​em extrair o dia da semana para que possamos especificar a parte como Dayofweek.

A função deve retornar um valor inteiro que varia de 1 a 7.

Um exemplo é como mostrado:

Selecione
Extract (Dayofweek a partir da data '2022-04-01') como Day_of_week;

A consulta acima deve retornar a saída como:

dia da semana
6

Conclusão

Este artigo discutiu dois métodos principais de extrair o dia da semana de um objeto de data em Legacy e Standard SQL.