Rainer: Umsatzstatistik - Problem beim zusammenrechnen

Hallo und guten Morgen,
Ich bin mit einem Umsatzstatistikmodul in's stocken gekommen.
Ich habe eine Tabelle mit folgenden Inhalt:

Tabellenname "umsatz"
k_nr datum  umsatz
1 2002-02-01 300,00
2 2002-02-01 600,00
1 2002-02-02 300,00

Der Quelltext:
<?
 include("connect.php");
 $result=mysql_query("SELECT SUM(umsatz) FROM umsatz");
 $anz=mysql_num_fields($result);
 $row=mysql_fetch_array($result);
 for ($k=0;$k<$anz;$k++)
 {
 $fn=mysql_field_name($result,$k);
 $g= "$row[$fn]";
 }

//1% Ausrechnen
 $p1=($g/100);

//Kundenumsatz einlesen
 $ku=mysql_query("SELECT * FROM umsatz");
  while ($z=mysql_fetch_array($ku)):
   $k_nr=$z["k_nr"];
   $umsatz=$z["umsatz"];

//Kunden% ausrechnen
  $pu=($umsatz/$p1);
  echo"$k_nr: $pu %<br>";
  endwhile;
?>

als Ergebnis erhalte ich:
1: 25%
2: 50%
1: 25%

Das ist soweit richtig. Ich möchte aber das die % der k_nr(Kundennummern) zusammengezählt werden und jede k_nr im Ausgabeergebnis nur einmal vorkommt.
Nach einer Nachtschicht frage ich lieber hier mal um Hilfe nach.
Im voraus schon mal vielen Dank, auch für die bisherige (Nach)Hilfe.

Gruss
Rainer

  1. Hallo,

    Das ist soweit richtig. Ich möchte aber das die % der k_nr(Kundennummern) zusammengezählt werden und jede k_nr im Ausgabeergebnis nur einmal vorkommt.

    hast Du schon einmal
    SELECT k_nr,SUM(umsatz) from umsatz group by k_nr

    probiert?

    Grüße
      Klaus

    1. Hallo,

      Das ist soweit richtig. Ich möchte aber das die % der k_nr(Kundennummern) zusammengezählt werden und jede k_nr im Ausgabeergebnis nur einmal vorkommt.

      hast Du schon einmal
      SELECT k_nr,SUM(umsatz) from umsatz group by k_nr

      probiert?

      jetzt eben
       aber es funktioniert nicht. Die Ausgabe ist dann:

      K_nr
      1    50%
      2   100%
      1    50%

      1. Hallo,

        jetzt eben
        aber es funktioniert nicht. Die Ausgabe ist dann:

        K_nr
        1    50%
        2   100%
        1    50%

        Eigentlich meinte ich das Statement für die zweite Abfrage;-)

        //Kundenumsatz einlesen
         $ku=mysql_query("SELECT k_nr,SUM(umsatz) FROM umsatz GROUP BY umsatz");
          while ($z=mysql_fetch_array($ku)):
           $k_nr=$z["k_nr"];
           $umsatz=$z["umsatz"];

        //Kunden% ausrechnen
          $pu=($umsatz/$p1);
          echo"$k_nr: $pu %<br>";
          endwhile;

        Grüße
          Klaus

      2. Moin!

        jetzt eben
        aber es funktioniert nicht. Die Ausgabe ist dann:

        Doch, das funktioniert, aber du hast das GROUP BY im ersten Statement eingebaut. Korrekt wäre es im zweiten Statement.

        Dann kriegst du nämlich nur soviele Zeilen Ausgabe, wie du verschiedene Kundennummern hast.

        K_nr
        1    50%
        2   100%
        1    50%

        - Sven Rautenberg