Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: sumowanie określonych pól z tabeli
Forum PHP.pl > Forum > Bazy danych
n3Mo
czy istnieje możliwość za pomocą polecenia SQL - SELECT SUM() zsumować tylko interesującą nas informację ?! snitch.gif

przykład:

TABELA

Kod
| KOD          | WARTOSC         |
=============================
| kzs          | 12.52          |
-------------------------------
| kzs          | 7.30          |
-------------------------------
| sub          | 1.35          |
-------------------------------
| brb          | 234.89          |
-------------------------------
| sub          | 5.93          |
-------------------------------
| kzs          | 12.52          |
-------------------------------


1. chcę zsumować pola "WARTOSC" ale tylko te w których występuje tylko kod "KZS"

bo w taki sposób tego nie uczynię:
  1. SELECT SUM(WARTOSC)
  2. FROM `TABELA` WHERE `KOD`=`KZS`


2. czy istnieje możliwość stosowania łączonych warunków, np. zsumowanie SUB + BRB /wg. przykładu/

how to do ? worriedsmiley.gif

pozdrawiam
n3Mo
kszychu
opuść te odwrócone apostrofy i będzie działało.
mike
1.
  1. SELECT SUM(WARTOSC)
  2. FROM TABELA WHERE KOD='KZS'

Pamiętaj, że porównujesz stringi.
2.
  1. SELECT SUM(WARTOSC)
  2. FROM TABELA WHERE KOD='KZS' AND KOD='SUB'

Poczytaj o operatorach logicznych.

----edit----
Poza tym nie to forum. Przenoszę:
php -> Bazy danych
------------
n3Mo
gra i beczy winksmiley.jpg czyt. działa

a co do operatorów to nie chce mi się czytać winksmiley.jpg znam

wielkie dzięki

BTW: mike_mech: sorki za napisanie tematu tu gdzie nie trzeba i dzięki raz jeszcze za szybką reakcję smile.gif

pozdrawiam
n3Mo
mike
OT
Cytat(n3Mo @ 2005-09-08 11:58:02)
a co do operatorów to nie chce mi się czytać winksmiley.jpg znam
To czemu nie stosujesz tongue.gif
----
Koniec OT'a
----
kosheen2k
Witam! Chciałem przedstawić wam mój problem, a jednocześnie uzyskać odpowiedź lub jakieś rozwiązanie:

Mianowicie:

Mam tabele do ktorej za pomoca skryptu wrzucam:

ID_TOWARU | NAZWA_TOWARU

Dla kazdego klienta moze byc kilka roznych towarow.



Nastepnie skryptem wrzucam do tabeli STAN takie dane:

ID_STAN (autoincrement) | ID_KLIENTA | ID_TOWARU | ILE_TON

I potem chce zrobić zsumowanie ile ton poszczególnego towaru ma klient.

Jak to zrobić?

Nie wiem jaką regułkę tu zastosować. Czy zrobić najpierw array w ktorym bedzie
ID_KLIENTA => ID_TOWARU => ILE_TON
a potem zrobić funkcją foreach czy jak?

  1. $query = "SELECT SUM(stan) FROM `stan` WHERE `id_klienta` = '$id_klienta' AND `id_towaru` = 'i tutaj utknąłem.
  2. '


Proszę pomóżcie.

Pozdrawiam

--------------------------

znalazłem rozwiązanie:

zrobiłem takie query:

  1. SELECT id_towaru, SUM(stan) FROM stan WHERE id_klienta = '$id_klienta' GROUP BY id_towaru


a w php coś takiego:

  1. <?php
  2. $result = mysql_query($query) or die(mysql_error());
  3.  
  4. while($zpt = mysql_fetch_array($result)){
  5. echo $zpt['id_towaru']). " = " . $zpt['SUM(stan)'] . " t";
  6. echo "<br />";
  7. $ilet = $ilet + $zpt['SUM(stan)'];
  8. }
  9. echo "Ton towaru w sumie: $it t<br />";
  10. ?>
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.