Signaler

Tri par date [Résolu]

Posez votre question radibus 20Messages postés samedi 24 mai 2008Date d'inscription 29 octobre 2017 Dernière intervention - Dernière réponse le 29 oct. 2017 à 10:55 par yg_be
Bonjour,

Acces 2007
Après avoir enfin pu regrouper mes dates ( merci yg_be) je souhaiterais les trier.
On dirait qu'il ne reconnait pas le format car il me les classe par ordre alphabétique ( aout 2010, aout 2011...) alors que je souhaiterais aout 2010, septembre 2010 ...

mon code sql:

ORDER BY Format([DATE ENTREE],"mmmm yyyy");

merci d'avance
Utile
+0
plus moins
je travaille dans un sous formulaire
Le champs qui "pointe" sur la date année est au format mmmm/aaaaa
Donnez votre avis
Utile
+0
plus moins
pardon c'est
ORDER BY Format([DATE ENTREE],"mmmm yyyy") ASC;
mais ca ne fonctionne toujours pas
Donnez votre avis
Utile
+0
plus moins
bonjour, suggestion:
SELECT ... , format(dateserial(year([DATE ENTREE]),month([DATE ENTREE]),1),"mmmm yyyy") 
FROM [ENTREE DE LOT] 
GROUP BY year([DATE ENTREE]), month([DATE ENTREE])
ORDER BY year([DATE ENTREE]), month([DATE ENTREE]) ;

 
Donnez votre avis
Utile
+0
plus moins
Bonjour,

merci
erreur de syntaxe sans l'expression de ce que j'ai souligné ci dessous

SELECT [ENTREE DE LOT].[TYPE CLIENT], Format([DATE ENTREE],"mmmm yyyy") AS MOIS, Sum([ENTREE DE LOT].POIDS) AS SommeDePOIDS, [MATERIEL ].[FAMILLE INFORMATIQUE]
FROM [MATERIEL] INNER JOIN [ENTREE DE LOT] ON [MATERIEL].MATERIEL = [ENTREE DE LOT].MATERIEL
GROUP BY [ENTREE DE LOT].[TYPE CLIENT], Format([DATE ENTREE],"mmmm yyyy"), [MATERIEL].[FAMILLE INFORMATIQUE]
HAVING ((([ENTREE DE LOT].[TYPE CLIENT]) Like "SOCIETE"))
SELECT ... , format(dateserial(year([DATE ENTREE]),month([DATE ENTREE]),1),"mmmm yyyy")
FROM [ENTREE DE LOT]

GROUP BY year([DATE ENTREE]), month([DATE ENTREE])
ORDER BY year([DATE ENTREE]), month([DATE ENTREE])
yg_be 3750Messages postés lundi 9 juin 2008Date d'inscription ContributeurStatut 9 novembre 2017 Dernière intervention - 29 oct. 2017 à 09:13
SELECT [ENTREE DE LOT].[TYPE CLIENT],  format(dateserial(year([DATE ENTREE]),month([DATE ENTREE]),1),"mmmm yyyy") AS MOIS, Sum([ENTREE DE LOT].POIDS) AS SommeDePOIDS, [MATERIEL ].[FAMILLE INFORMATIQUE] 
FROM [MATERIEL] INNER JOIN [ENTREE DE LOT] ON [MATERIEL].MATERIEL = [ENTREE DE LOT].MATERIEL 
WHERE [ENTREE DE LOT].[TYPE CLIENT] = "SOCIETE"
GROUP BY [ENTREE DE LOT].[TYPE CLIENT], year([DATE ENTREE]), month([DATE ENTREE]), [MATERIEL].[FAMILLE INFORMATIQUE] 
ORDER BY year([DATE ENTREE]), month([DATE ENTREE])
Répondre
Donnez votre avis
Utile
+0
plus moins
Génial !

en ajoutant ASC à la fin j'ai vraiment l'ordre croissant ( juillet 2010, septembre 2010...)
Si je ne mets pas ASC alors ca me fait décembre 2010, novembre 2010 ...)

Ce que j'aurais voulu en fait de commencer par octobre 2017 puis septembre 2017 ...
yg_be 3750Messages postés lundi 9 juin 2008Date d'inscription ContributeurStatut 9 novembre 2017 Dernière intervention - 29 oct. 2017 à 09:45
quand tu ne mets pas ASC, mets-tu autre chose?
je suggère
ORDER BY year([DATE ENTREE]) DESC, month([DATE ENTREE]) DESC
Répondre
Donnez votre avis
Utile
+0
plus moins
Je ne mettais rien, j'avais copier/coller ton code

Bonne suggestion ca fonctionne merci

RESOLU
yg_be 3750Messages postés lundi 9 juin 2008Date d'inscription ContributeurStatut 9 novembre 2017 Dernière intervention - 29 oct. 2017 à 10:55
parfait, peux-tu marquer comme résolu en utilisant le lien sous le titre?
Répondre
Donnez votre avis

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !