Resumo : neste tutorial você aprenderá como usar a DAYNAME()
função MySQL para obter o nome do dia de uma data específica.
Introdução à função MySQL DAYNAME()
A DAYNAME
função permite obter o nome de um dia para uma data especificada . O seguinte ilustra a sintaxe da DAYNAME
função:
DAYNAME(date);
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Nesta sintaxe:
date
: Este é um valorDATE
ouDATETIME
que você deseja obter o nome do dia.
A DAYNAME()
função retorna uma string que representa o nome do dia de uma data.
Por padrão, a DAYNAME()
função retorna o nome do dia na localidade definida pela lc_time_names
variável do sistema.
Para mostrar o valor atual da variável, você usa a seguinte instrução:
SELECT @@lc_time_names;
Linguagem de código: CSS ( css )
Saída:
+-----------------+
| @@lc_time_names |
+-----------------+
| en_US |
+-----------------+
1 row in set (0.00 sec)
Linguagem de código: JavaScript ( javascript )
A saída mostra que a localidade atual é en_US
. Isso significa que DAYNAME()
retornará a string "Monday"
se a data for segunda-feira:
SELECT DAYNAME('2023-10-16');
Linguagem de código: JavaScript ( javascript )
Saída:
+-----------------------+
| DAYNAME('2023-10-16') |
+-----------------------+
| Monday |
+-----------------------+
1 row in set (0.00 sec)
Linguagem de código: JavaScript ( javascript )
Se quiser obter o nome do dia em uma localidade específica, você precisará alterar o valor da lc_time_names
variável.
Por exemplo, o seguinte atribui o valor 'fr_FR'
à lc_time_names
variável que define a localidade como francês:
SET @@lc_time_names = 'fr_FR';
Linguagem de código: CSS ( css )
Aqui está o nome do dia em francês:
SELECT DAYNAME('2023-10-16');
Linguagem de código: JavaScript ( javascript )
Saída:
+-----------------------+
| DAYNAME('2023-10-16') |
+-----------------------+
| lundi |
+-----------------------+
1 row in set (0.00 sec)
Linguagem de código: JavaScript ( javascript )
A DAYNAME()
função retorna NULL
se date
for NULL
ou inválido, por exemplo, 2017-02-30
.
Exemplos de funções DAYNAME() do MySQL
Vejamos alguns exemplos de uso da DAYNAME()
função.
1) Exemplo simples de função DAYNAME()
O exemplo a seguir usa a DAYNAME()
função para retornar o nome de um dia para January 1st, 2000
:
SELECT DAYNAME('2000-01-01') dayname;
Linguagem de código: JavaScript ( javascript )
Saída:
+----------+
| dayname |
+----------+
| Saturday |
+----------+
1 row in set (0.00 sec)
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
2) Usando a função DAYNAME() com dados da tabela
Usaremos a orders
tabela do banco de dados de exemplo :
A instrução a seguir usa a DAYNAME()
função para obter a contagem de pedidos agrupada pelo nome do dia em 2004.
SELECT
DAYNAME(orderdate) day,
COUNT(*) total_orders
FROM
orders
WHERE
YEAR(orderdate) = 2004
GROUP BY
day
ORDER BY
total_orders DESC;
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Saída:
+-----------+--------------+
| day | total_orders |
+-----------+--------------+
| Friday | 35 |
| Wednesday | 29 |
| Thursday | 26 |
| Monday | 24 |
| Tuesday | 24 |
| Saturday | 11 |
| Sunday | 2 |
+-----------+--------------+
7 rows in set (0.00 sec)
Linguagem de código: JavaScript ( javascript )
O número de pedidos feitos na sexta-feira é o maior e houve apenas dois pedidos feitos no domingo.
Resumo
- Use a
DAYNAME()
função para obter o nome do dia para uma data específica.