Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Najczęściej kupowany?
termin
post
Post #1





Grupa: Zarejestrowani
Postów: 113
Pomógł: 1
Dołączył: 13.05.2003
Skąd: Wrocław

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


Witam, kombinuje na rozne sposoby i za cholere nie chce pokazać proawidlowej wartosci.

Mam 2 tabele. ZAMOWIENIA i ZAMNR
[ZAMOWIENIA]
id_zamow
data
reszte rzeczy pomijam

[ZAMNR]
idprod
idzam //tutaj klucz obcy do id_zamow
nazwa
ile

Chce aby w zależnosci od wybranego zakresu dat w tabeli ZAMOWIENIA wybral mi 1 produkt z tabeli ZAMNR ktory byl najczęściej kupowany i najwięcej sprzedawany gdyby nie było to zależne od wartosci 'ile' to bym sobie poradzil, ale tak to chyba w jednym zapytaniu nie da sie tego zrobic. Przykładowo, mam 3 zamowienia:

zamowienia_1:
koperta biala, ile=5
teczka_czerwona, ile=2
zeszyt, ile=1

zamowienie_2:
zeszyt, ile=1
koperta_biala, ile=1;

zamowienie_3:
zeszyt, ile=2
gumka, ile=1

Jaka widać zeszyt był najczęściej kupowany, a koperta_biala była byla najwięcej sprzedawana.

Ktos ma jakis pomysl jak to ugryźć?

Ten post edytował termin 10.01.2007, 21:03:49
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
termin
post
Post #2





Grupa: Zarejestrowani
Postów: 113
Pomógł: 1
Dołączył: 13.05.2003
Skąd: Wrocław

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


AD 1)
nazwę produktu trzymam tylko po to bo bedzie to potrzebne do historii zamowien, ponieważ w tabeli gdzie znajduja się wszystkie towary jest tendencja że po jakimś czasie produkty zostana usunięte i zastąpione innymi, np zeszyt po pol roku, bedzie zastąpionym nowym produktem np. zeszyt 60kartek itd. chyba ze chodziło Ci o cos innego?

AD 2)
To fakt bede musiał nad tym popracować i wszystko ujednolicić, ja tez przewijam ekran (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

AD 3)
Wszystko działa lecz małe zmiany trzeba bylo wprowadzić:

SELECT nazwa, COUNT(*) AS suma
FROM ZAMNR
JOIN zamowienia z ON z.id_zamow = ZAMNR.idzam
WHERE z.data BETWEEN '2006-01-01' AND '2006-12-31'
GROUP BY idzam ORDER BY suma DESC LIMIT 1

Przedmioty, ktorych najwiecej sprzedano (w sztukach)
SELECT nazwa, SUM(ile) suma
FROM ZAMNR
JOIN zamowienia z ON z.id_zamow = ZAMNR.idzam
WHERE z.data BETWEEN '2006-01-01' AND '2006-12-31'
GROUP BY nazwa ORDER BY suma DESC LIMIT 1

Bardzo Ci dziękuję, poszerzyłeś moją wiedzę na temat SQL-a (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

Posty w temacie


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: 7.10.2025 - 03:49