Requête SQL
theo99
Messages postés
3
Statut
Membre
-
DROE Messages postés 148 Date d'inscription Statut Membre Dernière intervention -
DROE Messages postés 148 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Une question de débutant ORACLE à vous les confirmés, dans la table suivante et dont les enregistrements sont:
NOM DATE MONTANT
952r010001 27.07.2007 0.0017
952r010001 25.09.2006 0.002
952r010001 23.04.2005 0.005
952r010002 21.07.2009 0.0015
Je veux, pour ces données, ne ressortir que les lignes par nom à la date la plus récente.
SELECT MAX(DATE), NOM, MONTANT
FROM MA_TABLE
GROUP BY NOM, MONTANT
Pour obtenir:
NOM DATE MONTANT
952r010001 27.07.2007 0.0017
952r010002 21.07.2009 0.0015
Qui me corrige s'il vous plait ?
Merci...
Une question de débutant ORACLE à vous les confirmés, dans la table suivante et dont les enregistrements sont:
NOM DATE MONTANT
952r010001 27.07.2007 0.0017
952r010001 25.09.2006 0.002
952r010001 23.04.2005 0.005
952r010002 21.07.2009 0.0015
Je veux, pour ces données, ne ressortir que les lignes par nom à la date la plus récente.
SELECT MAX(DATE), NOM, MONTANT
FROM MA_TABLE
GROUP BY NOM, MONTANT
Pour obtenir:
NOM DATE MONTANT
952r010001 27.07.2007 0.0017
952r010002 21.07.2009 0.0015
Qui me corrige s'il vous plait ?
Merci...
3 réponses
-
SELECT NOM, DATE, MONTANT
FROM ma_table
WHERE (NOM,DATE) IN (SELECT NOM, MAX(DATE)
FROM ma_table
GROUP BY NOM);
http://www.dba-ora.fr -
SELECT MAX(DATE), NOM, MONTANT,DATE
FROM MA_TABLE
ORDER BY date
GROUP BY NOM, MONTANT
apres "date" dans le order du indique
ASC pour ascendant ou
DESC pour l'inverse , sachant que par defaut c'est ASC -
Bonjour Damienmv,
Je te remercie pour ta réponse, toutefois celle ci n'épure pas ma table comme je le voudrais. En effet, je ne cherche à obtenir, pour chaque nom, que le montant à la date max (la plus récente).
Une correction à me proposer ?
Encore merci