Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > Requêtes et SQL.
Requêtes et SQL. Tout ce qui concerne vos questions sur les requêtes et le SQL sous Access se trouve ici.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 10/01/2012, 15h18   #1
Nouveau Membre du Club
 
Inscription : mars 2010
Messages : 130
Détails du profil
Informations personnelles :
Âge : 47

Informations forums :
Inscription : mars 2010
Messages : 130
Points : 38
Points : 38
Par défaut Tri dans une requete SQL

Bonjour,

j'ai un petit problème avec une base que j'ai récupérée et que je modifie : Je voudrais trier la requete ci-dessous par le champ HISTO_DATE mais je n'arrive pas à placer correctement mon "ORDER BY", quelqu'un pourrait m'aider ?

Et si en plus je pouvais faire faire un "sous-tri" avec le champ HISTO_HEURE" cela serait le summun !

Merci
Citation:
str_Req = "SELECT HISTORIQUE.ID_MATERIEL, LIB_SOUS_FONCTION, INDICE_DEF, ACTION, DESIGNATION, HISTO_DATE, HISTO_HEURE, DATE_RETOUR,"
str_Req = str_Req & "NOM_INGENIEUR & ' ' & PRENOM_INGENIEUR as INGENIEUR, LIB_ETAT, LIB_LOCALISATION, MOTIF, COMMENTAIRE, NUM_PIECE, UTILISATEUR_BDD "
str_Req = str_Req & "FROM ((SOUS_FONCTION RIGHT JOIN (MATERIEL RIGHT JOIN (LOCALISATION RIGHT JOIN HISTORIQUE ON "
str_Req = str_Req & "LOCALISATION.ID_LOCALISATION = HISTORIQUE.ID_LOCALISATION) ON MATERIEL.ID_MATERIEL = "
str_Req = str_Req & "HISTORIQUE.ID_MATERIEL) ON SOUS_FONCTION.ID_SOUS_FONCTION = MATERIEL.ID_SOUS_FONCTION) LEFT "
str_Req = str_Req & "JOIN ETAT ON HISTORIQUE.ID_ETAT = ETAT.ID_ETAT) LEFT JOIN INGENIEUR ON HISTORIQUE.ID_INGENIEUR "
str_Req = str_Req & "= INGENIEUR.ID_INGENIEUR WHERE HISTORIQUE.ID_MATERIEL = " & IIf(Cb_Materiel.Text = "", 1, Cb_Materiel.Text) & ";"
Taiby est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/01/2012, 17h24   #2
Nouveau Membre du Club
 
Inscription : mars 2010
Messages : 130
Détails du profil
Informations personnelles :
Âge : 47

Informations forums :
Inscription : mars 2010
Messages : 130
Points : 38
Points : 38
A force de bidouiller à droite et à gauche j'ai trouvé comment faire : il faillait mettre le "ORDER BY HISTO_DATE" à la fin mais en enlevant le point virgule. Ne me demandais pas pourquoi mais cela marche !


Par contre si quelqu'un connait le moyen de faire un double tri sur un deuxième champ (HISTO_HEURE) je suis preneur



Citation:
str_Req = "SELECT HISTORIQUE.ID_MATERIEL, LIB_SOUS_FONCTION, INDICE_DEF, ACTION, DESIGNATION, HISTO_DATE, HISTO_HEURE, DATE_RETOUR,"
str_Req = str_Req & "NOM_INGENIEUR & ' ' & PRENOM_INGENIEUR as INGENIEUR, LIB_ETAT, LIB_LOCALISATION, MOTIF, COMMENTAIRE, NUM_PIECE, UTILISATEUR_BDD "
str_Req = str_Req & "FROM ((SOUS_FONCTION RIGHT JOIN (MATERIEL RIGHT JOIN (LOCALISATION RIGHT JOIN HISTORIQUE ON "
str_Req = str_Req & "LOCALISATION.ID_LOCALISATION = HISTORIQUE.ID_LOCALISATION) ON MATERIEL.ID_MATERIEL = "
str_Req = str_Req & "HISTORIQUE.ID_MATERIEL) ON SOUS_FONCTION.ID_SOUS_FONCTION = MATERIEL.ID_SOUS_FONCTION) LEFT "
str_Req = str_Req & "JOIN ETAT ON HISTORIQUE.ID_ETAT = ETAT.ID_ETAT) LEFT JOIN INGENIEUR ON HISTORIQUE.ID_INGENIEUR "
str_Req = str_Req & "= INGENIEUR.ID_INGENIEUR WHERE HISTORIQUE.ID_MATERIEL = " & IIf(Cb_Materiel.Text = "", 1, Cb_Materiel.Text) & " ORDER BY HISTO_DATE"
Taiby est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/01/2012, 17h56   #3
Expert Confirmé
 
Avatar de Richard_35
 
Homme
Inscription : juillet 2007
Messages : 2 184
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Ille et Vilaine (Bretagne)

Informations forums :
Inscription : juillet 2007
Messages : 2 184
Points : 2 814
Points : 2 814
Bonjour Taiby,

Je te suggère de créer tes requêtes via l'assistant qui, lui, génère du SQL avec la bonne syntaxe (puisque Access se le génère pour lui-même). En passant du mode graphique au mode SQL, tu peux récupérer le code par un simple copier/coller. Tu peux, également faire le test sur une requête bidon, simplement pour repérer l'emplacement des clauses.

Sinon,
Code :
.../... & " ORDER BY HISTO_DATE, xxxxx, yyyyy"
L'idée de l'assistant est à utiliser : cela te permettra de ne pas attendre de réponse d'un tiers.
__________________
Dis-nous et à bientôt,
Richard.
----------------------------------------------------------------------------------------------
En cas de résolution, et afin de faciliter la tâche des bénévoles, merci de cliquer sur .
et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !
Richard_35 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 10/01/2012, 23h19   #4
Nouveau Membre du Club
 
Inscription : mars 2010
Messages : 130
Détails du profil
Informations personnelles :
Âge : 47

Informations forums :
Inscription : mars 2010
Messages : 130
Points : 38
Points : 38
Merci Richard, je viens de découvrir grâce à toi ce mode SQL depuis le mode graphique. Je ne connaissais pas (je suis autodidacte non par choix mais par la force des choses, d'où mes lacunes) et je dois dire que c'est super pratique !!

Merci pour ton coup de main
Taiby est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h35.


 
 
 
 
Partenaires

Hébergement Web