Database
 sql >> Baza danych >  >> RDS >> Database

Jak przyspieszyć zapytania SQL

Ważne jest, aby przyspieszyć zapytania SQL, aby upewnić się, że Twoje witryny i aplikacje działają szybko i zapewniają dobre wrażenia klientów. Oto kilka wskazówek, jak przyspieszyć zapytania do bazy danych i poprawić wydajność zapytań.


Jak przyspieszyć zapytania SQL

Oto kilka kluczowych sposobów na poprawę szybkości i wydajności zapytań SQL.


1. Użyj nazw kolumn zamiast SELECT *

Używając instrukcji SELECT, używaj w wyniku tylko tych kolumn, których potrzebujesz, zamiast używać SELECT * z… To znacznie zmniejszy rozmiar wyniku i przyspieszy zapytanie SQL.

Przeczytaj bonus:Jak zwiększyć maksymalną liczbę połączeń w MySQL

2. Unikaj zagnieżdżonych zapytań i widoków

Kiedy zagnieżdżasz zapytanie/widok w innym zapytaniu/widoku, powoduje to zwrócenie wielu danych dla każdego zapytania i znacznie spowalnia zapytanie. Czasami serwer bazy danych może nawet przekroczyć limit czasu i nic nie zwraca.


3. Użyj predykatu IN podczas zapytań o indeksowane kolumny

Podczas wysyłania zapytań do indeksowanej kolumny użyj predykatu IN-list zamiast operatorów matematycznych, takich jak „=” lub operatorów logicznych, takich jak AND/OR. Predykat IN może przyspieszyć zapytania SQL, ponieważ optymalizator zapytań sortuje listę IN, aby dopasować kolejność sortowania INDEX, co prowadzi do szybszych wyników.

Bonus Przeczytaj:Jak przechowywać znaki UTF8 w MySQL

4. Zrób wstępną scenę

Jeśli masz zapytania i procedury, które łączą się z dużymi tabelami, zaleca się utworzenie oddzielnej tabeli z tym jej wynikiem. Kiedy łączysz tabele z wyprzedzeniem, zapytania SQL, które wykorzystują ich wyniki, działają znacznie szybciej.


5. Użyj tabel tymczasowych

Podobnie, jeśli łączysz dużą tabelę z małą, utwórz tabelę tymczasową, która zawiera tylko dane wymagane do połączenia z mniejszą tabelą. Możesz to zrobić, wybierając dane z dużej tabeli, przenosząc je do tabeli tymczasowej i łącząc małą tabelę z tą tabelą tymczasową.

Przeczytaj bonus:Zmaterializowany widok PostgreSQL

6. Użyj CASE zamiast UPDATE

Instrukcja UPDATE trwa dłużej niż instrukcja CASE z powodu logowania. Z drugiej strony, instrukcja CASE określa, co należy zaktualizować, i przyspiesza zapytania SQL.


7. Unikaj używania GUID

Unikaj używania globalnie unikalnych identyfikatorów, ponieważ mogą one spowolnić Twoje zapytania. Zamiast tego użyj DATE lub IDENTITY.

Bonus Przeczytaj:Jak zmienić bazę danych na UTF8?

8. Unikaj używania OR w JOINS

JOINS są czasochłonne, ponieważ baza danych musi sprawdzać każdy wiersz pod kątem dopasowania. Jeśli używasz również warunku OR w JOIN, Twoja baza danych zajmie dwa razy więcej czasu, aby dopasować rekordy. Jak wspomniano wcześniej, zamiast tego użyj operatora IN.


Mamy nadzieję, że powyższe wskazówki pomogą Ci przyspieszyć zapytania SQL.

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Podstawy wyrażeń tabelarycznych, Część 8 – CTE, rozważania dotyczące optymalizacji ciąg dalszy

  2. Nowa flaga śledzenia w celu naprawienia zmiennej wydajności tabeli

  3. Więcej ulepszeń showplanu? Tak proszę!

  4. Koleś, kto jest właścicielem tego stołu #temp?

  5. Więcej operacji online dostępnych teraz – lub wkrótce