Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

MySQL explain filtered column jumping 4,100 with index

My Query:

EXPLAIN EXTENDED SELECT  `artwork`.`id` ,  `artwork`.`added` 
FROM  `artwork` 
ORDER BY  `artwork`.`added` DESC 
LIMIT 0 , 6

When I added an index on "added" to avoid using filesort and use index instead the output of explained went from

id select_type table type possible_keys key key_len ref rows filtered Extra
1 SIMPLE artwork ALL NULL NULL NULL NULL 302 100.00 Using filesort

to

id select_type table type possible_keys key key_len ref rows filtered Extra
1 SIMPLE artwork index NULL added 4 NULL 6 5033.33  

and I'm concerned about the filtered going up approximently 4,100 - I can't find on Google what filtered means

like image 835
Webnet Avatar asked Nov 10 '10 00:11

Webnet


1 Answers

Hey, it's actually good news. It shows how many rows your limitations are removing from the result set. In this case, that would be your LIMIT statement. See the manual:

The filtered column indicates an estimated percentage of table rows that will be filtered by the table condition. That is, rows shows the estimated number of rows examined and rows × filtered / 100 shows the number of rows that will be joined with previous tables. This column is displayed if you use EXPLAIN EXTENDED.

like image 186
Conspicuous Compiler Avatar answered Nov 03 '22 00:11

Conspicuous Compiler