Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL] Zapytanie do bazy - ranking użytkowników
Forum PHP.pl > Forum > Przedszkole
d.stp
Witam, mam 2 tabele: USERS i ZAROBKI. Próbuję zrobić ranking użytkowników, którzy najwięcej sprzedali produktów w sklepie.

W tabeli zarobki mam pola id|id_usera|kwota|data no i nie wiem jak zrobić ten ranking. Chyba coś z JOIN będzie, ale nie mam pojęcia... Może mnie ktoś nakierować?
Daimos
Pewnie:
http://dev.mysql.com/doc/refman/5.0/en/join.html
Zobacz sobie jak działa join, dla Twoich potrzeb może być np. inner join. Jeśli wiesz jak wyciągnąć te zarobki w dobrej kolejności, dodajesz tylko joina, w którym porównujesz pola z id usera.
  1. SELECT * FROM zarobki
  2. JOIN users ON idwTabeliUsera = idwTabeliZarobki

Nie zapomnij o aliasach, jeśli nazwy kolumn się powtarzają
Pyton_000
  1. SELECT count(id) AS suma FROM zarobki JOIN users ON(zarobki.user_id = users.id) GROUP BY zarobki.user_id ORDER BY suma DESC


To tak poglądowo.
d.stp
Dzięki Pyton, ale nie działa to chyba do końca tak jak chciałem. Chcę wyświetlić:

Login użytkownika | Zarobione pieniądze

A te zapytanie co mi podałeś sumuje ilość rekordów z tabeli zarobki każdego użytkownika.

Pogubiłem się :/
nospor
chciales miec liczbe sprzedazy, a nie sume kwot sprzedazy.... sie zdecyduj

No to jak chesz sume, to zamiast: count(id) AS suma
robisz: sum(kwota) AS suma
dosc logiczne.
d.stp
Tak, właśnie do tego doszedłem biggrin.gif

Ale kompletnie nie wiem jak wyświetlić login użytkownika smile.gif

Próbowałem nawet takich cyrków: $x['zarobki'][zarobki_id_usera']
nospor
....
No to dodaj go do select.....
select sum(kwota) AS suma, POLE_Z_LOGINEM_USERA from ...
d.stp
sciana.gif trzeba się podszkolić w zapytaniach.

Dzięki
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.