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 01/06/2011, 15h06   #1
Invité de passage
 
Inscription : août 2009
Messages : 4
Détails du profil
Informations forums :
Inscription : août 2009
Messages : 4
Points : 1
Points : 1
Par défaut Requête sur distanciers

Bonjour à Toutes et Tous,

J'aurais besoin de votre aide quant à la rédaction d'une requête car mes connaissances sont dépassées pour ce cas.

Je dispose de trois tables :
- une table origine des départs (49 points départs différents)
- une table origine des arrivées (xxx points)
- une table distancier : cette dernière regroupe l'ID_départ, l'ID_arrivée, la distance, le temps et la vitesse moyenne.

ID_départ est relié à la table des points_départs
ID_arrivée est reliée à la table des arrivées

J'ai mis le schéma des relations pour plus de clarté.

Je cherche à obtenir la vue suivante :
Pour chacune des ID arrivées, je voudrais les 10 premiers points départs classé dans l'ordre croissant.

Une info supplémentaire : la table distancier contient environ 3 000 000 de lignes.

Je vous remercie de votre aide précieuse et vous souhaite une bonne journée.

Nicolas.
Images attachées
Type de fichier : png Capture.PNG (27,9 Ko, 4 affichages)
Nicolas_D est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/06/2011, 19h17   #2
Expert Confirmé Sénior
 
Avatar de f-leb
 
Homme Fabien
Enseignant
Inscription : janvier 2009
Messages : 2 415
Détails du profil
Informations personnelles :
Nom : Homme Fabien
Âge : 41
Localisation : France, Sarthe (Pays de la Loire)

Informations professionnelles :
Activité : Enseignant

Informations forums :
Inscription : janvier 2009
Messages : 2 415
Points : 4 446
Points : 4 446
bonsoir,

Citation:
Envoyé par Nicolas_D Voir le message
...
- une table distancier : cette dernière regroupe l'ID_départ, l'ID_arrivée, la distance, le temps et la vitesse moyenne.
...
Pour chacune des ID arrivées, je voudrais les 10 premiers points départs classé dans l'ordre croissant.
classés comment ? Par ordre alphabétique ? Par distance ? Par vitesse moyenne ? ...

Je dirais bien par distance, c.a.d pour chaque ville d'arrivée, donner les 10 villes de départ les plus proches. C'est ça ?
f-leb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/06/2011, 09h05   #3
Invité de passage
 
Inscription : août 2009
Messages : 4
Détails du profil
Informations forums :
Inscription : août 2009
Messages : 4
Points : 1
Points : 1
Bonjour,

Classement par temps.

Excusez moi pour l'oubli !

Bonne journée.
Nicolas_D est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/06/2011, 21h35   #4
Expert Confirmé Sénior
 
Avatar de f-leb
 
Homme Fabien
Enseignant
Inscription : janvier 2009
Messages : 2 415
Détails du profil
Informations personnelles :
Nom : Homme Fabien
Âge : 41
Localisation : France, Sarthe (Pays de la Loire)

Informations professionnelles :
Activité : Enseignant

Informations forums :
Inscription : janvier 2009
Messages : 2 415
Points : 4 446
Points : 4 446
bonsoir,

essaye avec la requête:
Code sql :
1
2
3
4
5
6
SELECT t.*
FROM   distancier t
WHERE  (SELECT COUNT(*) < 10
        FROM   distancier d
        WHERE  d.id_arrivee = t.id_arrivee
               AND d.temps < t.temps);

mais avec 3 000 000 de lignes
f-leb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/06/2011, 11h33   #5
Invité de passage
 
Inscription : août 2009
Messages : 4
Détails du profil
Informations forums :
Inscription : août 2009
Messages : 4
Points : 1
Points : 1
Bonjour,

Merci pour votre aide. J'essai la requête et je vous tiens au courant.

Bonne journée.

Nicolas.
Nicolas_D est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 18h05.


 
 
 
 
Partenaires

Hébergement Web