Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Sumowanie selektywne
general
post
Post #1





Grupa: Zarejestrowani
Postów: 31
Pomógł: 0
Dołączył: 17.03.2004
Skąd: Teresin

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


To zadanie mnie przerasta...

1. Bazy: "DB_USERS" - użytkownicy, "DB_PAYMENTS" - wpłaty użytkowników

ZADANIE: Wyświetl listę użytkowników, podając NICK i SUMĘ wpłaconych kwot.

2. "Moje" rozwiązanie:

pole pay_name z DB_PAYMENTS zawiera id użytkownika z DB_USERS user_id

  1. $result = dbquery("SELECT tu.*, pay_name, pay_ile FROM DB_USERS tu
  2. LEFT JOIN DB_PAYMENTS tp ON tu.user_id=tp.pay_name
  3. WHERE tu.user_name LIKE 'R' // wybierz tylko użytkowników na 'R'
  4. ORDER BY user_name LIMIT 0, 20");

Wyświetla:
Rysio - 3000
Rysio - 100
Rysio - 20
Rzepa - 50
Rzepa - 400

Jak zrobić, by każdemu użytkownikowi z osobna zsumować liczbę wpłat?
By wyświetliło:
Rysio - 3120
Rzepa - 450

Będę wdzięczny za pomoc!

-----
  1. FUNCTION dbquery($query) {
  2. $result = @mysql_query($query);
  3. IF (!$result) {
  4. echo mysql_error();
  5. RETURN false;
  6. else {
  7. RETURN $result;
  8. }
  9. }
Go to the top of the page
+Quote Post
blooregard
post
Post #2


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




select sum(wplaty.platnosci_rysia) , uzytkownicy.nazwa_uzytkownika from wplaty, uzytkownicy where id_uzytkownika = [id] GROUP BY id_uzytkownika

Ten post edytował blooregard 5.02.2009, 12:16:23
Go to the top of the page
+Quote Post
general
post
Post #3





Grupa: Zarejestrowani
Postów: 31
Pomógł: 0
Dołączył: 17.03.2004
Skąd: Teresin

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


Dziękuję bardzo! Odpowiedź naprowadziła mnie na bardzo proste rozwiązanie:

  1. while...
  2. SELECT SUM(pay_ile) AS sum_ile FROM DB_PAYMENTS WHERE pay_name=DB_USERS.user_id
  3. print 'sum_ile'

(IMG:http://forum.php.pl/style_emoticons/default/yahoo.gif)
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 - 12:22