-2
votes

Oracle ordre par plusieurs colonnes ne fonctionne pas

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 xxx

c'est mon résultat: xxx

mais je m'attendais à obtenir: xxx


0 commentaires

4 Réponses :


1
votes

Si vous souhaitez commander par le nom de famille, il devrait s'agir de la première touche de la commande par : xxx


0 commentaires

0
votes

Essayez comme ci-dessous

  SELECT s.STDLASTNAME, s.STDFIRSTNAME, s.STDGPA
 FROM Student s
    ORDER BY 
    s.STDLASTNAME
    s.STDFIRSTNAME, s.STDGPA 


0 commentaires

0
votes

C'est ce que vous avez écrit:

ORDER BY 
    s.STDLASTNAME,
    s.STDFIRSTNAME,
    s.STDGPA DESC;
  • Tout d'abord, triez le résultat par des valeurs dans 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>


0 commentaires

0
votes

Vous pouvez essayer

commander par s.stdlastname, s.stdfirstName

ou

commander par s.stdlastname, S.STDGPA Desc

Pour obtenir le résultat souhaité.


0 commentaires