Problema:
Você gostaria de obter o mês de um campo de data em um banco de dados SQL Server.
Exemplo:
Nosso banco de dados tem uma tabela chamada
Furniture com dados nas colunas Id , Name e ProducedDate . | Id | Nome | Data de produção |
|---|---|---|
| 1 | sofá | 2018-01-10 |
| 2 | cadeira | 2018-01-05 |
| 3 | mesa | 20-06-2018 |
| 4 | estante | 2018-11-15 |
Vamos pegar o mês da
ProducedDate de cada produto e descobrir quais móveis foram produzidos em um determinado mês. Solução:
Usaremos o
MONTH() função. Aqui está a consulta que você escreveria:SELECT Name, MONTH(ProducedDate) AS ProducedMonth FROM Furniture;
Segue o resultado da consulta:
| Nome | ProduzidoMês |
|---|---|
| sofá | 1 |
| cadeira | 1 |
| mesa | 6 |
| estante | 11 |
Discussão:
Para obter um mês de um campo de data no SQL Server, use o
MONTH() função. Esta função recebe apenas um argumento – a data. Pode ser um tipo de dados de data ou data e hora. (No nosso exemplo, a coluna ProducedDate é da data tipo de dados.) O argumento pode ser um nome de coluna ou uma expressão. (No nosso exemplo, é o ProducedDate coluna). MONTH() retorna o número do mês como um número inteiro de 1 a 12. Para a mesa item, o ProducedMonth o valor é 6 (retornado do 'YYYY-MM-DD' data '2018-06-20' ).