Bonjour,
je suppose que je ne suis pas le premier à poser cette question mais je n'ai pas trouvé grand chose. Ou plutôt si, j'ai trouvé pas mal de trucs mais ça me semble assez crado ... et je n'ai pas trouvé 2 fois la même solution j'ai l'impression.
Simplifions : je suis sous Oracle. J'ai une table avec 3 colonnes de type date. Je souhaite récupérer la valeur de date la plus élevée dans la table
genre SELECT MAX (date1,date2,date3) FROM table
qui évidemment ne fonctionne pas.
Alors j'ai vu des solutions avec des unions, des select imbriqués ... et je ne sais pas quelle solution est la plus rapide. (ma table est assez grosse). De plus je dois peut etre appliquer ce MAX à plus de 3 colonnes (je dois avoir une quinzaine de colonnes date, mais je ne sais pas encore lesquelles choisir, normalement 3 à 6 d'entre elles).
Ou alors faire 3 requetes distinctes ? et comparer les dates obtenues (c'est pour un projet java) ?
Sinon, j'ai vu dans un forum un gars qui disais que c'était plus rapide de faire un ORDER BY DESC (avec un NUMROW=1 à la limite) ???
Avez vous une idée, Ô vous grands maîtres du SQL ?
Partager