sql >> Database teknologi >  >> RDS >> Database

Sådan får du måneden fra en dato i T-SQL

Problem:

Du vil gerne hente måneden fra et datofelt i en SQL Server-database.

Eksempel:

Vores database har en tabel med navnet Furniture med data i kolonnerne Id , Name og ProducedDate .

Id Navn Produceret dato
1 sofa 2018-01-10
2 stol 2018-01-05
3 skrivebord 2018-06-20
4 reol 2018-11-15

Lad os få måneden fra hvert produkts ProducedDate og find ud af, hvilke møbler der blev produceret i en given måned.

Løsning:

Vi bruger MONTH() fungere. Her er den forespørgsel, du ville skrive:

SELECT Name,
MONTH(ProducedDate) AS ProducedMonth
FROM Furniture;

Her er resultatet af forespørgslen:

Navn Produceret måned
sofa 1
stol 1
skrivebord 6
reol 11

Diskussion:

For at få en måned fra et datofelt i SQL Server skal du bruge MONTH() fungere. Denne funktion tager kun ét argument – ​​datoen. Dette kan være en dato- eller dato- og klokkeslætsdatatype. (I vores eksempel er kolonnen ProducedDate er af datoen datatype.) Argumentet kan være et kolonnenavn eller et udtryk. (I vores eksempel er det ProducedDate kolonne).

MONTH() returnerer månedsnummeret som et heltal fra 1 til 12. For skrivebordet elementet, ProducedMonth værdien er 6 (returneret fra 'YYYY-MM-DD'). dato '2018-06-20' ).


  1. Sådan formateres tal med ledende nuller i SQLite

  2. Sådan ændres dato- og tidsformater i T-SQL

  3. Kontrol af Oracle RAC-netværk og IP-oplysninger

  4. JSON_STORAGE_FREE() – Find ud af, hvor meget lagerplads der blev frigivet efter en opdatering af et JSON-dokument i MySQL