Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Problem zapytanie
picom
post
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 29.01.2009

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


Witam,
Mam pewien problem z zapytaniem tj:
Zapytanie poniżej wykonuje się bardzo szybko u mnie lokalnie na laptopie gdzie jest zainstalowany: AppServ2.5.10, a na serwerze z Debianem niestety wykonuje się około 15s. Serwer jest o wiele lepszy aniżeli laptop.

Wersja serwera na Debianie: 5.0.32-Debian_7etch8-log
Wersja serwera lokalnie: 5.0.51b-community-nt-log

Kod
select u.idUzytkownika, u.Imie, u.Nazwisko, SUM(fu.CenaBrutto), SUM(fp.Kwota) from Uzytkownik u

inner join Faktura f on u.idUzytkownika = f.idUzytkownika
inner join FakturaUsluga fu on f.idFaktury=fu.idFaktury
left join FakturaPlatnosc fp on f.idFaktury=fp.idFaktury

where
f.TerminZaplaty<'2009-01-28'

group by u.idUzytkownika


sugestie miele widziane. Jak potrzeba więcej informacji np. explain itp. mogę wkleić.


Pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
c3zi
post
Post #2





Grupa: Zarejestrowani
Postów: 266
Pomógł: 20
Dołączył: 15.11.2006
Skąd: Koszalin

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


Na serwerze masz tyle samo danych co w lokalnej bazie danych ? Indeksy rozumiem tak samo pozakładane są ..
Go to the top of the page
+Quote Post
picom
post
Post #3





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 29.01.2009

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


Tabela Faktura:
idFaktury - PRIMARY
idUzytkownika - INDEX
TerminZaplaty - INDEX

Tabela FakturaPlatnosc:
idfp - PRIMARY
idFaktury - INDEX

Tabela FakturaUsluga:
idfu - PRIMARY
idFaktury - INDEX

Tabela Uzytkownik:
idUzytkownika - PRIMARY


Tak mniej więcej to wygląda.
Faktycznie w tabeli FakturaPlatnosc lokalnie nie mam rekordów a na serwerze jest około 15k..., ale tak czy tak wykonanie zapytań 15s to jednak długo hmmm
Go to the top of the page
+Quote Post
c3zi
post
Post #4





Grupa: Zarejestrowani
Postów: 266
Pomógł: 20
Dołączył: 15.11.2006
Skąd: Koszalin

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


Pole daty zrób, jeśli nie masz, timestamp. Sumowanie musisz robić w zapytaniu ?
Go to the top of the page
+Quote Post
picom
post
Post #5





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 29.01.2009

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


Timestamp zrobione, ale nic to nie dało. Co do sumowania jak wydajniej nie musi być w MySql.
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 22.08.2025 - 16:05