MYSQL et expression LIMIT
17 messages
• Page 1 sur 2 • 1, 2
- yann214
- WRInaute occasionnel

- Messages: 370
- Inscription: 17 Nov 2005
MYSQL et expression LIMIT
Salut,
Est-ce que l'expression LIMIT dans un SELECT permet de gagner en performances ?
Lorsqu'on veut afficher 20 posts d'un forum (à partir du 50e) par exemple, vaut-il mieux faire :
- un "SELECT post_id FROM posts.db WHERE cat_id=2" puis afficher les 20 premiers enregistrements à partir de l'enregistrement 50 ?
- un "SELECTpost_id FROM posts.db WHERE cat_id=2 LIMIT 50,20" et afficher tous les enregistrements ?
Merci !!!
Est-ce que l'expression LIMIT dans un SELECT permet de gagner en performances ?
Lorsqu'on veut afficher 20 posts d'un forum (à partir du 50e) par exemple, vaut-il mieux faire :
- un "SELECT post_id FROM posts.db WHERE cat_id=2" puis afficher les 20 premiers enregistrements à partir de l'enregistrement 50 ?
- un "SELECTpost_id FROM posts.db WHERE cat_id=2 LIMIT 50,20" et afficher tous les enregistrements ?
Merci !!!
- yann214
- WRInaute occasionnel

- Messages: 370
- Inscription: 17 Nov 2005
le problème c'est qu'avec la 2e solution, on n'a pas le nombre d'enregistrements total pour déterminer le nombre de pages qu'on va avoir.
Il va falloir faire une 2e requete pour générer les numéros de pages alors qu'avec la première solution on avait tout...
Compte tenu de cet élément, la 2e solution est-elle toujours la meilleure ?
Il va falloir faire une 2e requete pour générer les numéros de pages alors qu'avec la première solution on avait tout...
Compte tenu de cet élément, la 2e solution est-elle toujours la meilleure ?
-

e-kiwi - Modérateur

- Messages: 15544
- Inscription: 23 Déc 2003
>> on n'a pas le nombre d'enregistrements total pour déterminer le nombre de pages qu'on va avoir
c'etait pas précisé
faudrait regarder comment fait phpmyadmin, car qd il fait une requete affichant les 30 premiers resultats, il te donne le total. y a ptetre une astuce cachée
c'etait pas précisé
faudrait regarder comment fait phpmyadmin, car qd il fait une requete affichant les 30 premiers resultats, il te donne le total. y a ptetre une astuce cachée
-

hipopulation - WRInaute occasionnel

- Messages: 346
- Inscription: 28 Juil 2004
Une requete avec COUNT pour avoir le total?
-

david96 - WRInaute passionné

- Messages: 1430
- Inscription: 28 Aoû 2005
Lance d'abord t'a requête :
$requete="SELECT bidule_id FROM bidule";
$verification_requete=mysql_query($requete,$taconnexion);
$nombre_total=mysql_num_rows($verification_requete);
echo "total : ".$nombre_total;
Bref dans ta variable $nombre_total, tu as le nombre exacte des enregistrements voulus selon ta requete.
Ensuite avec des if et des elseif tu devrais trouver tout seul
Y'a surement d'autres solutions, ce n'est pas ce qui manque avec PHP

$requete="SELECT bidule_id FROM bidule";
$verification_requete=mysql_query($requete,$taconnexion);
$nombre_total=mysql_num_rows($verification_requete);
echo "total : ".$nombre_total;
Bref dans ta variable $nombre_total, tu as le nombre exacte des enregistrements voulus selon ta requete.
Ensuite avec des if et des elseif tu devrais trouver tout seul
Y'a surement d'autres solutions, ce n'est pas ce qui manque avec PHP
17 messages
• Page 1 sur 2 • 1, 2
Lectures recommandées sur ce thème :
- Optimisation mysql et LIMIT
- [Mysql] max_connection et open-files-limit
- [mysql] LIMIT utile sur un champ indexé ?
- Expression régulière MySql REGEXP pour transformer des liens
- LIMIT par colonne ?
- limit 0,30 par défaut
- LIMIT dans un insert into sql
- OpenX ne tourne pas... Memory Limit
- Indexation Google : no limit ! Finis les 101k maxi
- Gestion des langues et des sessions en PHP / MySQL - 02-05-2004
- Passage à l'heure d'été/hiver sur un forum phpBB - 31-10-2010
- Script de mise en cache des pages (PHP MySQL) - 09-08-2010
- Sandbox, blacklistage et autres pénalités de Google - 16-03-2005
- GoogleStats : analyse temps réel des visites de Google sur votre site - 02-10-2002
- Sortie officielle de GoogleStats v2.0 ! - 23-02-2003
- Nouvelle étude de WebRankInfo : les mots-clés et le référencement - 04-01-2003
- AdSense Tracking : statistiques détaillées sur les clics AdSense - 29-02-2004
Qui est en ligne
Utilisateurs parcourant ce forum: kenzen et 0 invités




