chmouette
Messages postés57Date d'inscriptionjeudi 10 mars 2005StatutMembreDernière intervention21 juillet 2005
-
17 mars 2005 à 13:23
cs_Kelpan
Messages postés70Date d'inscriptionmercredi 24 avril 2002StatutMembreDernière intervention17 septembre 2006
-
24 oct. 2005 à 22:58
Salut les gens!
Mon problème est purement SQL. J'ai une table Ma Table avec des champs tels que :
+-------------------------+
! MaTable !
+-------------------------+
! I D !
! Date !
! Variable !
+-------------------------+ par exemple.
Je voudrai récupérer les ID des dernières versions, c'est à dire,
chaque ID dont la date est le maximal du groupe des valeurs ayant la même Variable
Je suis peut être pas clair... je réessaye :
immaginons que j'ai ces valeurs dans ma table :
ID ! Date ! Variable
----+-------+------------
la requête devrait me retourner :
1 ! 95 ! 1 4
'car de tous ceux qui ont Variable=1 c'est le + récent
2 ! 96 ! 1 3
'Car de tous ceux qui ont Variable=2 c'est le + recent
3 ! 94 ! 2
4 ! 98 ! 1
...
Merci d'avance,
et c'est décidé, un jour je parlerai SQL courament, mais au collège yavait pas, ils m'ont fait prendre Allemand...
chmouette
Messages postés57Date d'inscriptionjeudi 10 mars 2005StatutMembreDernière intervention21 juillet 2005 17 mars 2005 à 16:03
Ca y est voilà une solution qui marche :
SELECT Gestion_ID FROM [Gestion de la configuration] a
WHERE Systeme_ID= a.systeme_ID AND date (select top 1 Date from [Gestion de la configuration] b where b.Systeme_ID a.Systeme_ID order by b.date);
Merci à Loyousse et au topic sus-cité...
++
_________________________________________________________________
On ne devrait vivre qu'une minute et demie,
Le temps du premier baiser et du premier demi !
c'est un peu le même problème, et la solution donnée est :
SELECT id , Variable , (select top 1 Date from MaTable b where a.Variable = b.Variable order by date desc )as DateTrier FROM MaTable a group by a.Variable
mais sous access ca marche pas :
erreur : "you tried to execute a query that does not include the specified expression 'id' as part of an aggregate function"
Au vu de ce message, j'essaye de mettre id dans mon order by (de toutes facon l'identifiant est unique...) et il me sort tous les enregistrements de la table... pourtant la requête me semble être celle qui correspond à mes besoins...
j'essaie de comprendre comment l'adapter mais c'est pas facile...
Merci...
On ne devrait vivre qu'une minute et demie,
Le temps du premier baiser et du premier demi !
Vous n’avez pas trouvé la réponse que vous recherchez ?
c'est un peu le même problème, et la solution donnée est :
SELECT id , Variable , (select top 1 Date from MaTable b where a.Variable = b.Variable order by date desc )as DateTrier FROM MaTable a group by a.Variable
mais sous access ca marche pas :
erreur : "you tried to execute a query that does not include the specified expression 'id' as part of an aggregate function"
Au vu de ce message, j'essaye de mettre id dans mon order by (de toutes facon l'identifiant est unique...) et il me sort tous les enregistrements de la table... pourtant la requête me semble être celle qui correspond à mes besoins...
j'essaie de comprendre comment l'adapter mais c'est pas facile...
Merci...
On ne devrait vivre qu'une minute et demie,
Le temps du premier baiser et du premier demi !
cs_Kelpan
Messages postés70Date d'inscriptionmercredi 24 avril 2002StatutMembreDernière intervention17 septembre 2006 24 oct. 2005 à 22:58
SELECT Gestion_ID FROM [Gestion de la configuration] a
WHERE Systeme_ID= a.systeme_ID AND date (select top 1 Date from [Gestion de la configuration] b where b.Systeme_ID a.Systeme_ID order by b.date DESC);