Requete sql avec regroupement

Willow69 -  
 Willow69 -
Bonjour,

je suis débutant en sql et je voudrais sélectionner les lignes avec une étoile dans le tableau ci-dessous. En fait, c'est le dernier mouvement effectué par un id. Mais j'ai aucune idée de la façon de faire.

ID REFERENCE EMPLACEMENT DATE_MVT
1; BAIC100; 1H154; 08/10/2008 12:12:06;
*1; BAIC100; 1H1MA; 08/10/2008 12:13:51;
4; C4; H1ARH; 08/10/2008 15:24:59;
*4; C4; 1H1TK; 20/10/2008 15:48:10;
5; C4; H300; 20/10/2008 15:49:03;
5; C4; 1H1E1; 20/10/2008 15:49:28;
5; C4; 1H1PI; 23/10/2008 09:14:17;
*5; C4; 1H300; 23/10/2008 11:55:15;
*6; BAIC100; A22; 23/10/2008 11:55:51;
*7; B40M; 1H1MA; 23/10/2008 11:57:23;

merci de votre aide

5 réponses

XatOr Messages postés 799 Statut Membre 34
 
Y'a un problème, tu ne dois pas utiliser le caractère * dans ta table car celà correspond à quelquechose dans SQL.
0
Willow69
 
Le caractère * c'est juste pour marquer la ligne que je veux récupérer.
Je sais que c'est un caractère générique.

Merci
0
XatOr Messages postés 799 Statut Membre 34
 
Ok alors pourquoi tu as plusieurs ID de la même valeur ? L'ID doit être unique est là tu as plusieurs ID avec la même valeur !!
0
Willow69
 
L'ID est unique dans sa représentation puisqu'il s'agit de cartons.
S'il y a plusieurs ID c'est parce que c'est la table des mouvements. Donc un ID peut suivre un chemin au sein d'un entrepot et donc apparaître plusieurs fois dans ce fichier.
0
Ankhsuamon Messages postés 50 Statut Membre 2
 
Hello,

Tu devrais avoir ta reponse avec ceci:

SELECT Table1.ID, Table1.Reference, Table1.Emplacement, Table1.Date_Mvt
FROM Table1
WHERE (((Table1.Date_Mvt) In (SELECT Last(Table1.Date_Mvt) AS LastOfDate_Mvt
FROM Table1
GROUP BY Table1.ID;
)));

0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Willow69
 
Merci beaucoup pour la requete.
Malheureusement, elle ne peut pas fonctionner car last n'existe pas sous interbase 6.5

Je fouine toujours pour trouver une parade.
0