Như được mô tả ở đây trong các tài liệu MySQL :
Cột được lọc biểu thị tỷ lệ phần trăm ước tính của các hàng trong bảng sẽ được lọc theo điều kiện bảng. Nghĩa là, các hàng hiển thị số lượng hàng ước tính được kiểm tra và các hàng × được lọc / 100 hiển thị số lượng hàng sẽ được nối với các bảng trước đó. Trước MySQL 5.7.3, cột này được hiển thị nếu bạn sử dụng EXPLAIN EXTENDED. Kể từ MySQL 5.7.3, đầu ra mở rộng được bật theo mặc định và từ khóa EXTENDED là không cần thiết.
Tôi vẫn không hiểu. Ý nghĩa của "bộ lọc" ở đây là gì? Thông tin nào chúng ta có thể nhận được từ cột này?
Ví dụ: khi tôi bắt đầu truy vấn, một số truy vấn sẽ hiển thị 100 và một số truy vấn khác hiển thị 18 hoặc bất kỳ thấp hơn 100.
+-------------+-------+--------+---------+---------+------+----------+
| select_type | table | type | key | key_len | rows | filtered |
+-------------+-------+--------+---------+---------+------+----------+
| PRIMARY | a | range | search | 4 | 174 | 18.00 | <--
| PRIMARY | b | eq_ref | PRIMARY | 4 | 1 | 100.00 |
| PRIMARY | c | ALL | PRIMARY | 4 | 1 | 100.00 |
Điểm chính chúng ta có thể kết luận từ giá trị này là gì?
Có phải nó nói rằng, cột chỉ được lọc 18%? Hoặc nếu điểm càng thấp, chỉ số / truy vấn càng tốt?
Tôi đang sử dụng MySQL 5.7