Problema:
Vorresti ottenere il mese da un campo data in un database di SQL Server.
Esempio:
Il nostro database ha una tabella denominata Furniture con i dati nelle colonne Id , Name e ProducedDate .
| Id | Nome | Data di produzione |
|---|---|---|
| 1 | divano | 10-01-2018 |
| 2 | sedia | 05-01-2018 |
| 3 | scrivania | 20-06-2018 |
| 4 | libreria | 15-11-2018 |
Prendiamo il mese da ProducedDate di ogni prodotto e scopri quali mobili sono stati prodotti in un determinato mese.
Soluzione:
Useremo il MONTH() funzione. Ecco la domanda che scriveresti:
SELECT Name, MONTH(ProducedDate) AS ProducedMonth FROM Furniture;
Ecco il risultato della query:
| Nome | Mese di produzione |
|---|---|
| divano | 1 |
| sedia | 1 |
| scrivania | 6 |
| libreria | 11 |
Discussione:
Per ottenere un mese da un campo data in SQL Server, utilizzare MONTH() funzione. Questa funzione accetta solo un argomento:la data. Può essere un tipo di dati data o data e ora. (Nel nostro esempio, la colonna ProducedDate è della data tipo di dati.) L'argomento può essere un nome di colonna o un'espressione. (Nel nostro esempio, è ProducedDate colonna).
MONTH() restituisce il numero del mese come numero intero compreso tra 1 e 12. Per la desk articolo, il ProducedMonth il valore è 6 (restituito da 'YYYY-MM-DD' data '2018-06-20' ).