sql >> Database >  >> RDS >> Mysql

SELECT-instructie gebruikt geen possible_keys

Iets zegt me dat de MySQL Query Optimizer de juiste beslissing heeft genomen.

Hier is hoe je het kunt zien. Voer deze uit:

Aantal rijen

SELECT COUNT(1) FROM issued_parts;

Aantal rijen die overeenkomen met uw zoekopdracht

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

Als het aantal rijen dat u daadwerkelijk ophaalt groter is dan 5% van het totale aantal van de tabel, besluit de MySQL Query Optimizer dat het minder moeite kost om een ​​volledige tabelscan uit te voeren.

Als uw zoekopdracht nu exacter was, bijvoorbeeld met dit:

SELECT * FROM issued_parts WHERE date_issued = '20100101';

dan krijg je een heel ander UITLEG-abonnement.



  1. MAAK Oracle-procedure

  2. SQL Server String-functies (volledige lijst)

  3. Volgnummers maken in PostgreSQL

  4. Hoe koppel ik C++ MySQL Connector-bibliotheken aan Cmake?