Afficher les données 2 derniers mois transact sql
Résolu
pulls
Messages postés
160
Statut
Membre
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention -
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
je voudrais afficher les données du mois en cours et du mois passé, avec transact SQL. J'ai procédé ainsi:
Les données s'affichent bien entre février et décembre; mais à partir de janvier , les données de décembre de l'année antérieure ne s'affichent pas. Je tourne en rond depuis près d'une heure pour corriger ces codes en vain. Je vous prie de m'aider à régler ce problème.
cordialement.
je voudrais afficher les données du mois en cours et du mois passé, avec transact SQL. J'ai procédé ainsi:
SELECT *
FROM matable
WHERE month(madate) >= (month(getdate()))
Les données s'affichent bien entre février et décembre; mais à partir de janvier , les données de décembre de l'année antérieure ne s'affichent pas. Je tourne en rond depuis près d'une heure pour corriger ces codes en vain. Je vous prie de m'aider à régler ce problème.
cordialement.
2 réponses
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
bonsoir,
si tu souhaites comprendre, je te suggère de faire ceci:SELECT year(madate), month(madate), year(getdate()), month(getdate()) FROM matable
ensuite, peut-être essayer ainsi:WHERE 12*year(madate) + month(madate) >= 12*year(getdate()) + month(getdate())
-
Merci,
j'ai plutôt écrit :
SELECT *
FROM matable
WHERE madate >= DATEADD(MONTH, DATEDIFF(MONTH, 0, GETDATE()) - 1, 0) -- premier_jour_du_mois_precedent
Cordialement