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

Jakiś sposób na uniknięcie sortowania plików, gdy kolejność według jest inna niż klauzula where?

Zwróć uwagę, że termin MySQL sortowanie plików niekoniecznie oznacza, że ​​zapisuje na dysku. Oznacza to po prostu, że będzie sortować bez użycia indeksu. Jeśli zestaw wyników jest wystarczająco mały, MySQL posortuje go w pamięci, co jest o rząd wielkości szybsze niż we/wy dysku.

Możesz zwiększyć ilość pamięci przydzielanej przez MySQL dla sortowania plików w pamięci za pomocą sort_buffer_size zmienna serwera. W MySQL 5.1 domyślny rozmiar bufora sortowania to 2 MB, a maksymalny, jaki możesz przydzielić, to 4 GB.

aktualizacja: Jeśli chodzi o komentarz Jonathana Lefflera dotyczący mierzenia czasu sortowania, możesz dowiedzieć się, jak używać SHOW PROFILE FOR QUERY który da ci podział na czas trwania każdej fazy wykonywania zapytania.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Czy można zdefiniować kolumnę sygnatury czasowej, która nie ma wartości null i nie ma wartości domyślnej ani specjalnego zachowania podczas aktualizacji?

  2. Jak uniknąć błędu braku pamięci w przeglądarce z powodu zbyt wielu wywołań ajax?

  3. Jak wykonać wiele instrukcji SQL w jednym mysql_query?

  4. Wybierz dzień tygodnia od daty

  5. MySQL:ponowne użycie autoinkrementacji podczas wstawiania