SELECT limité pour multipage web.
Bonjour à tous zet à toutes.
L'affichage multipage web nécessité par un nombre important de ligne de résultat pour un SELECT est on ne peut plus simple avec une sgbd comme MySQL est son option LIMIT. Pour Oracle cette option n'existe pas.
Voici la technique que j'utilise le but étant d'avoir vos opinions et vos éventuelles solutions. :D
(PHP4, Oracle9)
Code:
query_origine = "SELECT * FROM table1"
Pour connaitre le nombre de pages à afficher, je dois connaitre le nombre de lignes d'où l'execution d'une première requête
Code:
SELECT count(*) FROM table1
Il faut ensuite que je ne selectionne que les lignes nécessaires à l'affichage d'une page
Code:
1 2 3 4 5 6 7
|
query_affichage = "
SELECT * FROM
(
SELECT e.*, ROWNUM RN FROM ( ".$query_origine.") e
)
WHERE RN BETWEEN ".$premiere_ligne." AND ".$derniere_ligne; |
Auriez vous des remarques ou des solutions alternatives. Merci.
nota : les variables sont précédées du signe $.