Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Którą kolumnę umieścić jako pierwszą w indeksie? Wyższa czy niższa kardynalność?

Wyszukiwania indeksów złożonych MySQL muszą odbywać się w kolejności, w jakiej kolumny są zdefiniowane w indeksie. Ponieważ chcesz, aby MySQL był w stanie rozróżniać rekordy, wykonując jak najmniej porównań, przy wszystkich innych rzeczach równych, najbardziej skorzystasz na indeksie złożonym, w którym kolumny są uporządkowane od najwyższej do najniższej kardynalności.

Oznacza to, że zakładając, że porównania muszą ostatecznie zostać przeprowadzone względem kolumny o najwyższej mocy, aby odróżnić rekordy, po co wymuszać przeprowadzanie porównań w pierwszej kolumnie z kolumną o najniższej mocy, kiedy ostatecznie może to być niepotrzebne?



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Błąd składni z funkcją Rand() w MySQL w Delphi

  2. Uzyskaj identyfikator wiersza, gdy naruszony jest UNIQUE KEY

  3. Czy to działa, aby zatrzymać wstrzykiwanie sql?

  4. PDO PHP ignoruje opcję ATTR_TIMEOUT dla MySQL, gdy serwer jest nieosiągalny

  5. Zapytaj dwie tabele i zamień wartości z jednej tabeli w drugiej