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.