La close Limit avec oracle [Résolu/Fermé]

Messages postés
1
Date d'inscription
jeudi 15 mai 2008
Statut
Membre
Dernière intervention
23 mai 2008
- - Dernière réponse :  tester - 28 févr. 2017 à 23:33
Bonjour,

j'ai besoin d'afficher certain résultats et n'avoir qu'un certain nombre de ligne.
sous mysql, on peut utiliser la clause limit, mais sous oracle je n'ai pas trouvé comment faire.

aide moi svp

Merci d'avance.
Afficher la suite 

11 réponses

Meilleure réponse
Messages postés
3935
Date d'inscription
jeudi 22 mai 2008
Statut
Membre
Dernière intervention
8 octobre 2010
629
14
Merci
http://www.adp-gmbh.ch/ora/sql/examples/first_rows.html

Dire « Merci » 14

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 69538 internautes nous ont dit merci ce mois-ci

9
Merci
sous oracle, utilise la pseudo colonne ROWNUM
Messages postés
5
Date d'inscription
jeudi 31 décembre 2009
Statut
Membre
Dernière intervention
1 janvier 2010
6
5
Merci
si si je l'ai suivi, avec ce code:
select *
from emp
where rownum < 4
order by sal desc;
et la requete me donne pas les employés qui ont le salaire le plus élevé.
4
Merci
Il faut faire sur oracle :

Select ename, sal
from (select ename, sal from emp order by sal desc)
where rownum < 4 ;



Enjoy
good job boy
1
Merci
Et oui, limit n'existe que dans MySQL je crois bien

il est quand même dommage que sandul te donne une piste en or et que tu t'obstines à ne pas vouloir la suivre.
tu te rappelles de "Errare humanum est, perseverare diabolicum" ?
1
Merci
:D ce que tu as fait est démontré dans l'article : tu récupères les 3 première lignes puis tu les tries.
alors que ce que tu veux c'est trier toutes les lignes et n'en récupérer que les 3 premières.

Allez hop ! relecture
Messages postés
5
Date d'inscription
jeudi 31 décembre 2009
Statut
Membre
Dernière intervention
1 janvier 2010
6
1
Merci
youpi je l'ai enfin résolu , c comme ça alors!!!!
merci bcp fiu, tu m'as vrmt aidé :)
Messages postés
5
Date d'inscription
jeudi 31 décembre 2009
Statut
Membre
Dernière intervention
1 janvier 2010
6
0
Merci
salut tout le monde,
est ce quelqu'un peut m'aider à résourdre ce probleme
1/Créer une requete PL/SQL avec select qui détermine les 3 employés ayant les salaires les plus élevés(sans utiliser un curseur).
2/ afficher les 4 employés qui représentent l'ancienneté la plus élevée (tjr avec une instruction pl/sql select).
0
Merci
salut
je sais que t'es pressé
qu'est-ce que tu comprends pas dans la démo du post 1 ?
Messages postés
5
Date d'inscription
jeudi 31 décembre 2009
Statut
Membre
Dernière intervention
1 janvier 2010
6
0
Merci
j'ai utilisé ce code:
select * from emp
order by sal
limit 0,3;
mais lors de la compilation, oracle me dis que limit ne se termine pas correctement
je ne sais pas pourkoi?
0
Merci
<?php
$c = oci_connect("hr", "hrpwd", "localhost/XE");
$mystmt = "select city from locations order by city";
$minrow = 4; // row number of first row to return
$maxrow = 8; // row number of last row to return
$pagesql = "select *
from ( select a.*, rownum as rnum
from ( $mystmt ) a
where rownum <= :maxrow)
where rnum >= :minrow";
$s = oci_parse($c, $pagesql);
oci_bind_by_name($s, ":maxrow", $maxrow);
oci_bind_by_name($s, ":minrow", $minrow);
oci_execute($s);
oci_fetch_all($s, $res);
var_dump($res);
?>



extrait de :
http://www.oracle.com/technology/tech/php/pdf/underground-php-oracle-manual.pdf