sql >> Database >  >> RDS >> Database

Hoe u de maand van een datum haalt in T-SQL

Probleem:

U wilt de maand uit een datumveld in een SQL Server-database halen.

Voorbeeld:

Onze database heeft een tabel met de naam Furniture met gegevens in de kolommen Id , Name , en ProducedDate .

Id Naam ProducedDate
1 bank 2018-01-10
2 stoel 05-01-2018
3 bureau 2018-06-20
4 boekenkast 2018-11-15

Laten we de maand halen uit de ProducedDate van elk product en ontdek welke meubels in een bepaalde maand zijn geproduceerd.

Oplossing:

We gebruiken de MONTH() functie. Dit is de vraag die je zou schrijven:

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

Dit is het resultaat van de zoekopdracht:

Naam ProducedMonth
bank 1
stoel 1
bureau 6
boekenkast 11

Discussie:

Om een ​​maand uit een datumveld in SQL Server te halen, gebruikt u de MONTH() functie. Deze functie heeft slechts één argument nodig:de datum. Dit kan een datum- of datum- en tijdgegevenstype zijn. (In ons voorbeeld is de kolom ProducedDate is van de datum gegevenstype.) Het argument kan een kolomnaam of een uitdrukking zijn. (In ons voorbeeld is dit de ProducedDate kolom).

MONTH() geeft het maandnummer terug als een geheel getal van 1 tot 12. Voor het bureau item, de ProducedMonth waarde is 6 (teruggestuurd van de 'YYYY-MM-DD' datum '2018-06-20' ).


  1. Hoe de vergelijking van twee kolommen als één kolom in Oracle te selecteren?

  2. Hoe LIKE te gebruiken in SQL

  3. Best Practice voor het maken van indexen op uw MySQL-tabellen - Rolling Index Builds

  4. Gebruikersregistratie en e-mailverificatie PHP en MySQL