Requete sql avec limit

senio -  
Reivax962 Messages postés 3742 Statut Membre -
Bonjour,

Je voudrais écrire une requête pour sortir la liste des 5 étudiants les moins âgés

voici ma requête:
select nom, prenom,age
from etudiant
order by age asc limit 5

j'ai cette erreur:
ORA-00933: la commande SQL ne se termine pas correctement

Merci de m'aider

4 réponses

  1. Syzygy Messages postés 404 Statut Membre 147
     
    Bonjour,

    Peut-être un début de solution,

    Essayez :

    select TOP 5 nom, prenom,age
    from etudiant
    order by age '(il me semble qu'il n'est pas nécessaire de préciser l'ordre de tri, l'ordre par défault étant l'ordre croissant)

    Bonne journée
    0
  2. maka54 Messages postés 721 Statut Membre 80
     
    select nom, prenom,age
    from etudiant
    order by age asc
     limit 0,5 
    0
  3. senio
     
    Merci, j'ai trouvé la solution
    select nom, prenom,age
    from etudiant where rownum<=5
    order by age asc;

    Merci de m'avoir repondu
    0
  4. Reivax962 Messages postés 3742 Statut Membre 1 011
     
    Bienvenue dans les joies des syntaxes SQL différentes d'un SGBD à l'autre :)

    LIMIT, c'est du MySQL
    TOP, c'est du SQL Server
    En DB2, ce serait "fetch first 5 rows only" (c'est très explicite, DB2)
    Et sous Oracle, c'est avec RowNum...

    Vive la normalisation !

    Xavier
    0