Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> bestselery sprzedazy z kilku kategorii - jak zrobić
neotec
post
Post #1





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 12.04.2008

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


Mam cennki/tabelę gdzie mam tez jedno pole z ilością sprzedaży danego produktu, powiedzmy 'top':
id|name|group|cena|top

Jak zadać pytanie select aby wyswietlic top10 z kazdej grupy wyswietlając kilka grup na raz?
Chodzi mi aby liczba bestsellerów była zawsze taka sama, moje dotychczasowe zapytanie w stylu:
Kod
SELECT * `cennik` WHERE `group` in ('lcd', 'plazma') AND `top` > 33

wyświetla towary powyżej pewniego limitu, np. 33
ale jak zrobić top10?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
Sedziwoj
post
Post #2





Grupa: Zarejestrowani
Postów: 793
Pomógł: 32
Dołączył: 23.11.2006
Skąd: Warszawa

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


A co zrobisz jeśli wszystkich produktów sprzedało się tyle samo? Niema wtedy TOP10, bo jak?


--------------------
Algorytmy w PHP, czy ktoś o tym słyszał?
Dlaczego tak mało kobiet programuje? ponieważ nie zajmują się głupotami.
Go to the top of the page
+Quote Post
pyro
post
Post #3





Grupa: Zarejestrowani
Postów: 2 148
Pomógł: 230
Dołączył: 26.03.2008

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


Cytat(neotec @ 18.04.2008, 14:16:10 ) *
Mam cennki/tabelę gdzie mam tez jedno pole z ilością sprzedaży danego produktu, powiedzmy 'top':
id|name|group|cena|top

Jak zadać pytanie select aby wyswietlic top10 z kazdej grupy wyswietlając kilka grup na raz?
Chodzi mi aby liczba bestsellerów była zawsze taka sama, moje dotychczasowe zapytanie w stylu:
Kod
SELECT * `cennik` WHERE `group` in ('lcd', 'plazma') AND `top` > 33

wyświetla towary powyżej pewniego limitu, np. 33
ale jak zrobić top10?


takie zapytanie nie moze nic zwrocic bo jest bledne ;D


--------------------
ET LINGUA EIUS LOQUETUR IUDICIUM
Go to the top of the page
+Quote Post
neotec
post
Post #4





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 12.04.2008

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


Cytat(Sedziwoj @ 18.04.2008, 15:42:48 ) *
A co zrobisz jeśli wszystkich produktów sprzedało się tyle samo? Niema wtedy TOP10, bo jak?

Zgadza się, ale jest to przypadek wyjątkowy i do pominięcia.

Cytat
takie zapytanie nie moze nic zwrocic bo jest bledne

Dlaczego?


Jest jedno roziązania tego zadania, ale nie wiem czy optymalne?
Kod
SELECT * `cennik` WHERE `group` = 'lcd' ORDER BY `top` DESC LIMIT 10
UNION
SELECT * `cennik` WHERE `group` = 'plazma' ORDER BY `top` DESC LIMIT 10
UNION ......
Go to the top of the page
+Quote Post
pyro
post
Post #5





Grupa: Zarejestrowani
Postów: 2 148
Pomógł: 230
Dołączył: 26.03.2008

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


Cytat
Dlaczego?


zabrakło klauzuli FROM, chyba że nie korzystasz z bazy ANSI SQL tylko jakiejś, z która sie osobiscie nie zetknalem


--------------------
ET LINGUA EIUS LOQUETUR IUDICIUM
Go to the top of the page
+Quote Post
piotrooo89
post
Post #6


Newsman


Grupa: Moderatorzy
Postów: 4 005
Pomógł: 548
Dołączył: 7.04.2008
Skąd: Trzebinia/Kraków




Kłania się nisko znajomość całego zapytania SELECT.

Tu masz całe http://www.w3schools.com/sql/sql_select.asp

Pozdrawiam


--------------------
Go to the top of the page
+Quote Post
pyro
post
Post #7





Grupa: Zarejestrowani
Postów: 2 148
Pomógł: 230
Dołączył: 26.03.2008

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


nierówno pod sufitem? dajesz linka, w którym jest napisane to co potwierdza moją tezę? chyba, że to nie do mnie tylko duplikowanie mojej wypowiedzi...


--------------------
ET LINGUA EIUS LOQUETUR IUDICIUM
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 Aktualny czas: 22.08.2025 - 05:02