Précédent   Forum des professionnels en informatique > Bases de données > Oracle > SQL
SQL Forum d'entraide sur le SQL pour Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 28/02/2011, 12h15   #1
Invité de passage
 
Inscription : novembre 2007
Messages : 4
Détails du profil
Informations forums :
Inscription : novembre 2007
Messages : 4
Points : 1
Points : 1
Par défaut ORA 10.2 - Select + date

Bonjour,

J'ai un petit souci sur un select :

Code :
SELECT FROM_DATE, SOCIETY, ID FROM TABLE1 WHERE ID = 1000
Ce select peut me renvoyer plusieurs lignes avec une valeur différente pour FROM_DATE.

Je dois récupérer la ligne pour laquelle la valeur de FROM_DATE est la plus grande.

Quelqu'un aurait une piste ? Je nage

Merci
Bos2007 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/02/2011, 13h07   #2
Membre chevronné
 
Homme O. Joly
Support
Inscription : décembre 2010
Messages : 287
Détails du profil
Informations personnelles :
Nom : Homme O. Joly
Âge : 38
Localisation : France, Seine et Marne (Île de France)

Informations professionnelles :
Activité : Support
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : décembre 2010
Messages : 287
Points : 617
Points : 617
Plusieur solutions à priori

Si on suppose que le couple id, society est unique :

Code sql :
1
2
3
SELECT *
FROM ( SELECT FROM_DATE, SOCIETY, ID FROM TABLE1 WHERE ID = 1000 ORDER BY 1 DESC )
WHERE rownum=1;

Sinon

Code sql :
1
2
3
SELECT FROM_DATE, SOCIETY, ID
FROM ( SELECT rank() over (partition BY SOCIETY, ID ORDER BY FROM_DATE DESC) rk, FROM_DATE, SOCIETY, ID FROM TABLE1 WHERE ID = 1000)
WHERE rk=1;
ojo77 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 14h13.


 
 
 
 
Partenaires

Hébergement Web