Resumo : neste tutorial, você aprenderá como usar a WEEKDAY()
função MySQL para obter o índice dos dias da semana para uma data específica.
Introdução à função MySQL WEEKDAY()
A WEEKDAY()
função retorna um índice de dia da semana para uma data , ou seja, 0 para segunda-feira, 1 para terça-feira,… 6 para domingo.
Aqui está a sintaxe da WEEKDAY()
função:
WEEKDAY(date)
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Nesta sintaxe:
date
: este é o valor da data a partir do qual você deseja obter o dia da semana. Podedate
ser um valorDATE
ou DATETIME .
A WEEKDAY()
função retorna um número inteiro que representa de segunda a domingo. Além disso, ele retorna NULL
se for date
, NULL
inválido ou zero ( 0000-00-00
).
Exemplos de WEEKDAY() do MySQL
Vejamos alguns exemplos de uso da WEEKDAY()
função.
1) Exemplo simples de função WEEKDAY()
O exemplo a seguir usa a WEEKDAY()
função para obter o índice dos dias da semana para a data '2010-01-01'
:
SELECT
DAYNAME('2010-01-01'),
WEEKDAY('2010-01-01');
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Saída:
+-----------------------+-----------------------+
| DAYNAME('2010-01-01') | WEEKDAY('2010-01-01') |
+-----------------------+-----------------------+
| Friday | 4 |
+-----------------------+-----------------------+
1 row in set (0.00 sec)
Linguagem de código: texto simples ( texto simples )
Neste exemplo, usamos a DAYNAME()
função para obter o nome do dia da semana e WEEKDAY()
a função para obter o índice do dia da semana January 1st, 2010
.
2) Usando a função WEEKDAY() com dados da tabela
Usaremos a orders
tabela do banco de dados de exemplo :
O exemplo a seguir usa WEEKDAY()
função para contar o número de pedidos feitos na segunda-feira de 2004:
SELECT
COUNT(*)
FROM
orders
WHERE
WEEKDAY(orderDate) = 0
AND YEAR(orderDate) = 2004;
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Saída:
+----------+
| count(*) |
+----------+
| 24 |
+----------+
1 row in set (0.01 sec)
Linguagem de código: JavaScript ( javascript )
Como funciona a consulta.
SELECT COUNT(*)
: estaSELECT
cláusula retorna contagens de linhas usando aCOUNT()
função.FROM orders
: estaFROM
cláusula especifica a tabela de pedidos para recuperar os dados.WHERE WEEKDAY(orderDate) = 0 AND YEAR(orderDate) = 2004
: AWHERE
cláusula tem duas condições:WEEKDAY(orderDate) = 0
: Esta condição seleciona linhas ondeorderDate
cai na segunda-feira (0).YEAR(orderDate) = 2004
: Esta condição verifica se o ano doorderDate
é igual a 2004.
Resumo
- Use a
WEEKDAY()
função para obter o índice dos dias da semana de uma data específica.