{Oracle}

Fermé
bkake - 6 janv. 2010 à 01:13
 fiu - 6 janv. 2010 à 17:19
Bonjour,
j'ai un probleme urgent , en faite j'ai deux tables : emprunt(idvelo,dateEmprunt,idUsager) et restitution(idVelo,dateRestitution,idUsager).
Mais quand g fais la jointure en tre les 2 tables comme ca :
SELECT e.idUsager,e.idVelo,e.dateEmprunt,r.dateResttitution
From emprunt e JOIN restitution r
On e.idUsager=r.idUsager and e.idVelo=r.idVelo;
G fais cette requete pour afficher la liste des trajets effectués par les users, mias ca marche si un utilisateur n'emprunte pas le meme velo quelque soit le temps, mais s'il arrive par exemple ke
l'user 6 a emprunte le velo 8 le 20/10/2009 et il l'emprunte aussi le 03/01/2010 aloes la requete mettra chaque emprunt de cet user deux fois pour chaque date donné.
Merci 111

3 réponses

salut

- soit tu explores emprunt, emprunt et restitution (oui oui, il y a bien 2 fois emprunt) en demandant que dateEmprunt #1 <= dateRestitution < dateEmprunt #2 pour un même idVelo
- soit tu reconstruis ta table avec Emprunt(idUsager, idVelo, dateEmprunt, dateRestitution, autres attributs) car un client n'emprunte qu'un vélo à un instant t

PS: j'ai adoré ton titre clair et concis où tu arrives à exposer ton problème en un minimum de mots
0
bon en fait keski fait le signe #1 et #2 dans ce code , merci aide moi a avoir plus d'explication
Maerci !!!
0
ce n'est qu'une manière abrégée de montrer que l'encadrement doit faire jouer 2 valeurs provenant de 2 tables. tu aurais pu te douter que ce n'était pas du "code" car rien dans ce que j'ai écrit ne ressemble à du "code"
0