Mysql
 sql >> база данни >  >> RDS >> Mysql

Инструкцията SELECT не използва possible_keys

Нещо ми подсказва, че MySQL Query Optimizer е решил правилно.

Ето как можете да разберете. Изпълнете тези:

Брой редове

SELECT COUNT(1) FROM issued_parts;

Брой редове, съответстващи на вашата заявка

SELECT COUNT(1) FROM issued_parts WHERE date_issued > '20100101';

Ако броят на редовете, които действително извличате, надвишава 5% от общия брой на таблицата, MySQL Query Optimizer решава, че би било по-малко усилия да се направи пълно сканиране на таблицата.

Сега, ако вашата заявка беше по-точна, например с това:

SELECT * FROM issued_parts WHERE date_issued = '20100101';

след това ще получите изцяло различен EXPLAIN план.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да проверя дали MySQL заявка с помощта на наследения API е била успешна?

  2. Как мога да направя заявка в mysql-таблица (където се съхраняват lat и long) това, което е най-близкото местоположение до въведеното местоположение (ширина и дължина)?

  3. Perl:Как да копирам/огледаме отдалечени MYSQL таблици в друга база данни? Вероятно и различна структура?

  4. Как да кажа на node.js, че mysql не работи на порта по подразбиране?

  5. Как да копирате таблица от една mysql база данни в друга mysql база данни