web-dev-qa-db-fra.com

Comment puis-je obtenir le numéro du mois (pas le nom du mois) à partir d'une date dans SQL Server?

Comment puis-je obtenir le numéro du mois en sql? J'utilise le code suivant mais il retourne le nom du mois.

SELECT DATENAME(mm, GETDATE())
20
mjyazdani

Utilisez la fonction datepart avec m extension.

SELECT DATEPART(m, getdate())
32
mr_eclair

Utilisez la fonction mois - SELECT MONTH(GETDATE())

10
Paul J

Utilisez Datepart :

DATEPART(mm,getdate());
4
CloudyMarble

Vous voulez DATEPART :

select datepart(mm, getdate())
3
Daniel Kelley

Essayez le ci-dessous:

SELECT DATEPART(mm,getdate())
2
Massimiliano Peluso

Vous pouvez également l'utiliser pour composer le numéro du mois

SELECT RIGHT('00' + RTRIM( CAST( DATEPART( MONTH, GETDATE() ) AS varchar(2)) ) , 2)
1
ExplodingPony

Cela retournera avec deux caractères dans le cas de Jan-Sep:

SELECT CASE WHEN LEN(MONTH(GETDATE())) = 1 THEN '0' + CAST(MONTH(GETDATE()) AS VARCHAR(2)) 
WHEN LEN(MONTH(GETDATE())) = 2 THEN CAST(MONTH(GETDATE()) AS VARCHAR(2)) END
0
Sunil