OVH Cloud OVH Cloud

Pb de requete

2 réponses
Avatar
Erwan
Bonjour,

J'ai une table du style:=20

Ref | Date | Trimestre | Valeur
----+----------+-----------+--------
A |30/06/2003| 2003/Q2 |12
A |31/01/2004| 2004/Q1 |11
A |29/02/2004| 2004/Q1 |10
...
B |29/02/2004| 2004/Q1 |3

Remarquez que pour une m=EAme r=E9f=E9rence et un m=EAme=20
trimestre, je peux avoir plusieurs valeurs =E0 des dates=20
diff=E9rentes (Par contre, il y a toujours au moins une=20
valaur pour chaque couple Ref/trimestre).

Pour chaque couple ref/trimestre, je veux obtenir la=20
Valeur correspondant =E0 la date la plus r=E9cente.

Dans le cas ci dessus, =E7a donnerait:

Ref | Date | Trimestre | Valeur
----+----------+-----------+--------
A |30/06/2003| 2003/Q2 |12
A |29/02/2004| 2004/Q1 |10 <-On ne garde qu'1 ligne
B |29/02/2004| 2004/Q1 |3


J'ai essay=E9 avec les regroupements..mais =E7a m'oblige =E0=20
d=E9finir une op=E9ration (max, min, moyenne..) sur ma=20
valeur, ce que ne souhaite pas.

Merci d'avance...car l=E0 je suis vraiment =E0 bout!

2 réponses

Avatar
G Roydor
Bonjour,

si vous désirez conserver une seule ligne, la valeur n'a aucune
signification donc essauyez un
select distinct ref,date, trimestre from ttttt
gr

Erwan a écrit:
Bonjour,

J'ai une table du style:

Ref | Date | Trimestre | Valeur
----+----------+-----------+--------
A |30/06/2003| 2003/Q2 |12
A |31/01/2004| 2004/Q1 |11
A |29/02/2004| 2004/Q1 |10
...
B |29/02/2004| 2004/Q1 |3

Remarquez que pour une même référence et un même
trimestre, je peux avoir plusieurs valeurs à des dates
différentes (Par contre, il y a toujours au moins une
valaur pour chaque couple Ref/trimestre).

Pour chaque couple ref/trimestre, je veux obtenir la
Valeur correspondant à la date la plus récente.

Dans le cas ci dessus, ça donnerait:

Ref | Date | Trimestre | Valeur
----+----------+-----------+--------
A |30/06/2003| 2003/Q2 |12
A |29/02/2004| 2004/Q1 |10 <-On ne garde qu'1 ligne
B |29/02/2004| 2004/Q1 |3


J'ai essayé avec les regroupements..mais ça m'oblige à
définir une opération (max, min, moyenne..) sur ma
valeur, ce que ne souhaite pas.

Merci d'avance...car là je suis vraiment à bout!



Avatar
didier
Bonjour

J'ai eu le même problème pour des données différentes
Pour résoudre le problème, il faut passer par 2 requêtes
succesives
La première pour le max de date
Ne prendre que les champs :
Ref en regroupement
Date en max
Trimestre en regroupement
Cela vous donne la date la plus récente pour le couple
ref;trimestre.
Pour la deuxième requête vous prenez votre table et la
requête que vous venez de faire avec le lien avec la date
et la ref
Vous prenez vois 3 champs de votre requête et votre
valeur de votre table et par la liaison vous aurez la
valeur correspondante à votre max de date

J'espère que cela vous permettra d'avancer

-----Message d'origine-----
Bonjour,

J'ai une table du style:

Ref | Date | Trimestre | Valeur
----+----------+-----------+--------
A |30/06/2003| 2003/Q2 |12
A |31/01/2004| 2004/Q1 |11
A |29/02/2004| 2004/Q1 |10
....
B |29/02/2004| 2004/Q1 |3

Remarquez que pour une même référence et un même
trimestre, je peux avoir plusieurs valeurs à des dates
différentes (Par contre, il y a toujours au moins une
valaur pour chaque couple Ref/trimestre).

Pour chaque couple ref/trimestre, je veux obtenir la
Valeur correspondant à la date la plus récente.

Dans le cas ci dessus, ça donnerait:

Ref | Date | Trimestre | Valeur
----+----------+-----------+--------
A |30/06/2003| 2003/Q2 |12
A |29/02/2004| 2004/Q1 |10 <-On ne garde qu'1 ligne
B |29/02/2004| 2004/Q1 |3


J'ai essayé avec les regroupements..mais ça m'oblige à
définir une opération (max, min, moyenne..) sur ma
valeur, ce que ne souhaite pas.

Merci d'avance...car là je suis vraiment à bout!

.