[SGBD] Constat curieux sur MySQL

Constat curieux sur MySQL [SGBD] - SQL/NoSQL - Programmation

Marsh Posté le 23-01-2003 à 14:27:06    

J'utilise l'option log_long_queries de MySQL (version 3.23.54) pour analyser les requêtes longues. Et il y a quelque chose qui m'échappe avec ca. Exemple d'une requete enregistrée :
 
# Query_time: 4  Lock_time: 0  Rows_sent: 35  Rows_examined: 789
 
Hors, vu la clause WHERE qu'elle comporte, cette requete peut porter sur un maximum de 350 enregistrements. Je ne m'explique pas les 789 parcourus. D'ailleurs, si je fais un EXPLAIN sur cette requête, la colonne "rows" indique 246. C'est un problème connu ? Ou il y a une explication conne ?

Reply

Marsh Posté le 23-01-2003 à 14:27:06   

Reply

Marsh Posté le 23-01-2003 à 14:45:26    

je dirais qu'à priori 789 lignes de la table ont été parcourues pour ressortir les 246 résultats


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 23-01-2003 à 14:50:23    

Justement non, c'est impossible d'après la structure de la table (et surtout des index qui lui sont associés). Désolé d'avoir oublié cette précision dans mon premier message :jap:
 
En fait, il faudrait savoir quelle différence fait MySQL entre la colonne Rows d'un EXPLAIN et la colonne Rows_examined de slow_query.log J'ai toujours cru que c'est la même chose, mais je me trompe peut être :??:

Reply

Marsh Posté le 28-01-2003 à 19:53:31    

c'est peut être un bug de mysql, envoie un bug report exposant ton problème

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed