Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Przyspieszenie zapytania
mooschka
post 31.10.2009, 14:17:43
Post #1





Grupa: Zarejestrowani
Postów: 8
Pomógł: 1
Dołączył: 31.10.2009

Ostrzeżenie: (0%)
-----


Witam,

w jaki sposób mogę poprawić poniższe zapytanie, aby wykonywało się szybciej?
  1. SELECT * FROM h_lico WHERE (NR_ZAWOD, LICO_SEZ) IN (SELECT NR_ZAWOD, LICO_SEZ FROM h_lico GROUP BY NR_ZAWOD, LICO_SEZ HAVING COUNT(LICO_NR)>1)

Tabela h_lico ma ok 105 tys. rekordów, na kolumny NR_ZAWOD, LICO_NR, LICO_SEZ założone są indeksy.
Dodam jeszcze, że samo podzapytanie wykonuje się około pół sekundy i zwraca 79 wierszy.

Ten post edytował mooschka 31.10.2009, 14:21:39
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
wookieb
post 31.10.2009, 14:22:40
Post #2





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Ile czasu wykonuje się obecne zapytanie?
Dla testu zapisz sobie wyniki zapytania
  1. SELECT NR_ZAWOD, LICO_SEZ FROM h_lico GROUP BY NR_ZAWOD, LICO_SEZ HAVING COUNT(LICO_NR)>1
i wstaw je potem do IN. Jeżeli będzie szybciej to ok, jeżeli nie to powiedz coś więcej o strukturze bazy, co ona robi i co chcesz dokładnie pobrać


--------------------
Go to the top of the page
+Quote Post
mooschka
post 31.10.2009, 14:41:37
Post #3





Grupa: Zarejestrowani
Postów: 8
Pomógł: 1
Dołączył: 31.10.2009

Ostrzeżenie: (0%)
-----


Cytat(wookieb @ 31.10.2009, 14:22:40 ) *
Ile czasu wykonuje się obecne zapytanie?
Dla testu zapisz sobie wyniki zapytania
  1. SELECT NR_ZAWOD, LICO_SEZ FROM h_lico GROUP BY NR_ZAWOD, LICO_SEZ HAVING COUNT(LICO_NR)>1
i wstaw je potem do IN. Jeżeli będzie szybciej to ok, jeżeli nie to powiedz coś więcej o strukturze bazy, co ona robi i co chcesz dokładnie pobrać


Nie doczekałem się (czekałem parę minut, teraz znowu zapuściłem).

Tak jak napisałeś, wstawiłem 79 par do IN i zapytanie trwało 0,0943 sekundy (w tym samym czasie na innej konsoli idzie cały czas problematyczne zapytanie).
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 27.06.2025 - 07:22