sql >> Database >  >> RDS >> Mysql

Is er een manier om de prestaties van mysql Indexing te controleren?

De volgende zoekopdracht zal u vertellen of de zoekopdracht index gebruikt of niet:

EXPLAIN EXTENDED SELECT col1, col2, col3, COUNT(1) 
FROM table_name 
WHERE col1 = val 
GROUP BY col1 
ORDER BY col2;

SHOW WARNINGS;

U kunt een dekkingsindex toevoegen voor de beste prestaties.

Voor de dekkingsindex voegt u kolommen toe die worden gebruikt in waar clausules eerst, dan kolommen die in groep worden gebruikt door de kolommen die worden gebruikt in volgorde door en vervolgens kolommen die worden gebruikt in selecteren.

bijv. voor bovenstaande zoekopdracht kunt u dekkende index KEY(col1, col2, col3) . toevoegen

*Opmerking Het toevoegen van meer indexen vertraagt ​​uw invoegquery's.



  1. Hoe kan ik SQLite Real vals naar Java BigDecimal-waarden schrijven?

  2. Voor de laatste keer, NEE, u kunt IDENT_CURRENT() niet vertrouwen

  3. GETUTCDATE() Voorbeelden in SQL Server (T-SQL)

  4. Resultaten bestellen van gretig geladen geneste modellen in Node Sequelize