sql >> Databáze >  >> RDS >> Mysql

Pokud při spuštění EXPLAIN hodnota pole pro klíč není null, ale Extra je prázdné, je klíč použit?

Using index neznamená to, co si myslíte, že to znamená. Pokud je přítomen v Extra znamená, že optimalizátor ve skutečnosti nečte celé řádky, ale používá index (výhradně) k nalezení informací o sloupcích.

Klíč může být stále používán pro jiné věci, například pro provádění vyhledávání, pokud máte WHERE klauzule atd. Ve vašem konkrétním scénáři, například zmizení Using temporary; ve skutečnosti to znamená, že je využíván váš index, protože MySQL již nepotřebuje přeskupovat obsah vaší tabulky do nové dočasné tabulky, aby provedl GROUP BY .




  1. Vytváření modelu strojového učení pomocí SQL Server, ML.NET a C#

  2. Je možné načíst DATA bez souboru (tj. v paměti) pro MySQL a Java?

  3. Při konfiguraci MySql s prouděním vzduchu Apache v Hadoopu došlo k problému

  4. Jak získat datum ve formátu RRRR-MM-DD z pole data a času TSQL?