![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 33 Pomógł: 0 Dołączył: 19.10.2004 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
chcialem stworzyc TOP 10 najchetniej zamawianych produktow, wszystko by bylo w porzadku, gdyby nie to, ze wiele tych samych produktow (lecz rozniacych sie np. kolorem) ma ten sam numer kodowy (oprocz tego jest takze uniklane id). W zwiazku z tym nie interesuje mnie np. zebym w TOP 10 mial np. monitor bialy i monitor czarny, tylko po prostu monitor. Aktualnie robie to nieelegancko, czyli tak:
No i mam 10 najchetniej kupowanych produktow. I teraz wystarczy, ze w petli 10 razy odwolam sie do id_produktu, gdzie na koncu zapytania dam GROUP BY id_produktu. Mowiac scislej mam np. 7 produktow o numerze 1234 (7 roznych kolorow) i 13 zamowien tego produktu (o numerze 1234 - nie interesuje mnie jakie to byly kolory) Probowalem cos takiego:
grupuje mi ladnie, tyle ze count zlicza caly iloczyn kartezjanski :/ Probowalem z podzapytaniem (zeby w juz mial pogrupowane najpierw produkty, a pozniej grupowal po zamowieniach), ale cos sie zawiesza - moze jakos zle je skonstruowalem. Jezeli ktos widzi rozwiazanie prosilbym o przyklad. Ten post edytował Reigon 28.02.2007, 15:51:24 |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 191 Pomógł: 5 Dołączył: 13.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
jak wygląda Twoja tabela?
-------------------- "Don't tell me you want a bridge - show me the canyon you want to cross" Giuseppe Delena
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 33 Pomógł: 0 Dołączył: 19.10.2004 Ostrzeżenie: (0%) ![]() ![]() |
prosze bardzo, wersja uproszczona - myslalem ze widac to w/w zapytaniach
statystyki: ID ID_ZAM (zapisane id_content, ktore jest not unique - ten sam zamowiony produkt, lecz z innych kategori (np. rozny kolor)) DATA produkty: ID ID_CONTENT (not unique) DESC KATEGORIA Ten post edytował Reigon 4.03.2007, 23:23:01 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 23 Pomógł: 0 Dołączył: 24.07.2006 Ostrzeżenie: (0%) ![]() ![]() |
Spróbuj to:
Powinno działać. Pozdrawiam Kosmi -------------------- Elektrotechnika z Informatyką Techniczną. Studia w Lesznie!
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 33 Pomógł: 0 Dołączył: 19.10.2004 Ostrzeżenie: (0%) ![]() ![]() |
Niestety - tak jak pisalem w pierwszym poscie. Motyw z podzapytaniem zabija mi proces bazy danych, uzycie procka 100% i totalna zawiecha...same podzapytanie wykonuje sie w mikrosekundach, ale juz calosc to masakra (moze przez to, ze tabela produkty posiada prawie pol miliona rekordow, a statystyki 2000 jak na razie)
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 23 Pomógł: 0 Dołączył: 24.07.2006 Ostrzeżenie: (0%) ![]() ![]() |
W pierwszym poście pisałeś też:
moze jakos zle je skonstruowalem. Próbowałeś wogóle odpalić to co Ci podałem? Może problem leży w konstrukcji bazy (tabel). Masz jakiekolwiek indeksy pozakładane? Pozdrawiam Kosmi -------------------- Elektrotechnika z Informatyką Techniczną. Studia w Lesznie!
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 33 Pomógł: 0 Dołączył: 19.10.2004 Ostrzeżenie: (0%) ![]() ![]() |
Tak, odpalone dokladnie to Twoje (wczesniej identyczne napisalem sobie, ale jeszcze raz sprobowalem), indeksy sa zalozone na id_content i id_zam oczywiscie. Wiadomo, ze podzapytania sa niewydajne, ale to juz jest po prostu niewydolne :/
Jak na razie nadal robie to w petli, 10 + 1 zapytan - czyli tak jak podalem w pierwszym poscie Ma ktos jakis inny pomysl, bez podzapytania, bo prawdopodobnie zwis jest przez to, ze dla kazdego z 500 tys rekordow wykonywane jest podzapytanie. Ten post edytował Reigon 6.03.2007, 20:35:10 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 14:17 |