Summe einer bestimmten Spalte

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Summe einer bestimmten Spalte

    Hallo Leute,

    könnt ihr mir sagen, warum die verdammte Abfrage nicht funktioniert, ich komme im Moment überhaupt nicht drauf. Stehe total auf der Leitung. liegt vielleicht auch daran, dass ich keine Ahnung habe Muss irgendwie an diesem sum()-Befehl liegen, vielen Dank im vorraus


    <?

    $verbindung = @mysql_connect("db_host","db_user","db_pass");

    if (!$verbindung) {
    echo "Keine Verbindung möglich!\n";
    exit;
    }
    $abfrage = "SELECT sum(buchung_betrag),buchung_team_id,buchung_betrag,buchung_text,buchung_datum,
    buchung_art_id,buchung_art_text,
    email,verein
    FROM hm_buchung,hm_buchung_art,hm_user
    WHERE email='$auth_user' AND buchung_team_id=verein AND buchung_art_id=buchung_art
    ORDER BY buchung_datum DESC";

    $erg = mysql_db_query("db_name",$abfrage,$verbindung);

    while($row = mysql_fetch_array($erg)) {
    $buchung_betrag=$row["buchung_betrag"];
    echo "<TR bgcolor=#99CCFF align=center><TD><P><font face=Verdana size=2 color=#000000>";
    echo "$buchung_betrag";
    echo "</font></P></TD>";

    }

    mysql_close();

    ?>

  • #2
    Was funktioniert denn nicht ? Liefert die Query kein Ergebnis ?
    Präzisiere doch mal.

    Ich tippe mal, du kommst nicht an das Ergebnis der SUM() Spalte dran. Das hat den Index 0 im Array; oder du weist es einem Alias zu.

    SELECT SUM(spalte) als spaltensumme ....
    Dann hat es im Ergebnisarray den Index spaltensumme
    [color="#334D7B"]"Los, lass uns loslegen! Hm ? Quatschen können wir hinterher immer noch!"[/color]
    [color="#9C5245"]"Aber Bommel, wir können jetzt nicht bumsen. Wir müssen doch erst den Kindern - ... "[/color]
    [color="#334D7B"]"Ja ja ja. Du willst immer nur das Eine. Buchstabenzeigen, Buchstabenzeigen - meine Gefühle sind dir wohl scheißegal."[/color]

    © Harald Schmidt

    Kommentar


    • #3
      Die genaue Fehlermeldung lautet:

      Warning: Supplied argument is not a valid MySQL result resource in /is/htdocs/20613/www.hockey-manager.de/testseite/persoenlich/buchung.php on line 56


      Wenn ich das sum() wegmache, läufts wieder einwandfrei, dann zeigt er mir halt di buchungen an, die ich da habe.

      Kommentar


      • #4
        Ja stimmt, SUM() kann nicht ohne GROUP BY stehen, wenn noch normale Spalten abgefragt werden.


        Versuche mal:
        Code:
        SELECT sum(buchung_betrag),buchung_team_id,buchung_betrag,
        buchung_text,buchung_datum, buchung_art_id,buchung_art_text, email,verein 
        FROM hm_buchung,hm_buchung_art,hm_user
        WHERE email='$auth_user' AND buchung_team_id=verein AND buchung_art_id=buchung_art
        GROUP BY [B]PRIMÄRSCHLÜSSEL DER TABELLE[/B] ORDER BY buchung_datum DESC
        [color="#334D7B"]"Los, lass uns loslegen! Hm ? Quatschen können wir hinterher immer noch!"[/color]
        [color="#9C5245"]"Aber Bommel, wir können jetzt nicht bumsen. Wir müssen doch erst den Kindern - ... "[/color]
        [color="#334D7B"]"Ja ja ja. Du willst immer nur das Eine. Buchstabenzeigen, Buchstabenzeigen - meine Gefühle sind dir wohl scheißegal."[/color]

        © Harald Schmidt

        Kommentar


        • #5
          Den Primärschlüssel welcher Tabelle meinst Du?

          Kommentar


          • #6
            Oops. Fehlalarm. Habe den Primaärschlüssel.
            Zuletzt geändert von Kiruma; 14.06.2002, 02:06.

            Kommentar


            • #7
              FEHLALARM!!

              Das skript zeigt mir nun alle Buchungen nocheinmal an und leider keine Summe. Was nun?

              Kommentar


              • #8
                Nun, habe ich diesen Vorschlag erhalten, aber warum funktioniert dieser nicht?

                $abfrage = "SELECT sum(buchung_betrag),buchung_team_id,buchung_betrag,buchung_text,buchung_datum,buchung_id
                buchung_art_id,buchung_art_text,
                email,verein
                FROM hm_buchung,hm_buchung_art,hm_user
                WHERE email='$auth_user' AND buchung_team_id=verein AND buchung_art_id=buchung_art
                GROUP BY buchung_id";

                $erg = mysql_db_query("db_name",$abfrage,$verbindung);

                $row = mysql_fetch_row($erg);

                if (!isset($row[0])) {$row[0] = 0;}


                mysql_close();

                Kommentar


                • #9
                  Falls es jemanden interessiert, der Befehl lautet:

                  $abfrage = "SELECT sum(buchung_betrag)
                  FROM hm_buchung,hm_buchung_art,hm_user
                  WHERE email='$auth_user' AND buchung_team_id=verein AND buchung_art_id=buchung_art";

                  $erg = mysql_db_query("db_name",$abfrage,$verbindung);

                  $row = mysql_fetch_row($erg);

                  if (!isset($row[0])) {$row[0] = 0;} ;

                  echo $row[0];

                  Kommentar

                  Lädt...
                  X