Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 104 Pomógł: 3 Dołączył: 13.10.2004 Ostrzeżenie: (0%)
|
Musze koniecznie uzyc LEFT JOIN, dlatego, ze musze wyswietlac rowniez wartosci NULL i je pogrupowac.
Mam dwie tabele, jedna skaladajaca sie (do tej pory) z okolo 50000 rekordow, struktura:
A tu druga tabela, zawierajaca kilkanascie rekordow, w ktorej wpisuje ile maili zostalo wyslanych:
I teraz zapytanie, ktore grupuje wszystkie wyslane maile, laczy sie z druga tabela i na tej podstawie moge wylicz procent otwarte/wyslane:
I problem w tym, ze ten kochany LEFT JOIN opoznia generacje wynikow do okolo 40sek. Mozna to jakos zoptymalizowac? Ten post edytował redman2 23.07.2007, 13:44:57 |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 1 045 Pomógł: 5 Dołączył: 8.11.2004 Skąd: trójmiasto Ostrzeżenie: (0%)
|
Cytat 1. Pierwsza tabela jest bardzo czesto aktualizowana (dodawane co kilka minut nowe rekordy) 2. Zapytanie jest czesto uruchamiane przez kilka osob w firmie Ależ to nie ma znaczenia, mam na myśli tablicę w sensie php Może źle się wyraziłem w poprzednim poście i myśleś o tabeli SQL ? Przecież za każdym razem jak będziesz wykonywał zapytanie, to wczytujesz drugą tabelę do tablicy php, To co proponuje w sensie merytorycznym zwraca dane takie same jak twój LEFT JOIN, chyba nie sądzisz, że w ciągu wykonywania zapytania trwającego mniej niż sekundę zajdą jakieś poważne zmiany? Jak tak co jest mało prawdopodobne to użytkownik dostanie wynik sprzed kilku sekundy co można uznać za aktualny Ten post edytował php programmer 23.07.2007, 14:24:42 |
|
|
|
redman2 Wolny LEFT JOIN 23.07.2007, 13:43:14
php programmer Skoro ta druga tabela ma zaledwie kilkanaście reko... 23.07.2007, 13:53:44
redman2 Skomentuje najpierw druga odpowiedz: nie, LIKE nie... 23.07.2007, 14:01:00
redman2 Mam indeksy, co widac w pierwszym poscie przy defi... 23.07.2007, 15:12:11 ![]() ![]() |
|
Aktualny czas: 26.12.2025 - 15:02 |