J'essaie d'utiliser l'ordre d'Oracle par déclaration sur plusieurs colonnes, mais une seule colonne est triée. Ma requête est c'est mon résultat: p> mais je m'attendais à obtenir: p>
4 Réponses :
Si vous souhaitez commander par le nom de famille, il devrait s'agir de la première touche de la commande par code>:
Essayez comme ci-dessous
SELECT s.STDLASTNAME, s.STDFIRSTNAME, s.STDGPA FROM Student s ORDER BY s.STDLASTNAME s.STDFIRSTNAME, s.STDGPA
C'est ce que vous avez écrit:
ORDER BY s.STDLASTNAME, s.STDFIRSTNAME, s.STDGPA DESC;
s.stdgpa code> colonne dans la commande décroissante (A). Li>
- S'il s'avère que deux (ou plus) lignes partagent la même valeur
s.stdgpa code> (aucun d'entre eux ne le font dans votre exemple), puis triez ces lignes par s.stdlastname en ordre croissant (b) li>
- Si deux (ou plus) lignes partagent la même valeur
s.stdlastname code> (c'est le cas avec Dodge code> et kendall code>), puis Trier ces lignes par s.stdfirstname code> dans l'ordre croissant (c) (Ainsi, pour les Dodges, Mariah vient en premier, Tess Suivant) Li>
ul> apparemment, vous souhaitez trier le résultat par nom de famille, puis prénom, puis (probablement) stdgpa code> (en ordre décroissant), donc ce serait ce que les gens ci-dessus ont déjà dit: p> xxx pré> p>
Vous pouvez essayer p>
ou p>
Pour obtenir le résultat souhaité. P> commander par s.stdlastname, s.stdfirstName code> p>
commander par s.stdlastname, S.STDGPA Desc code> p>