limit bei summe ?

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

  • limit bei summe ?

    Hi ich habe eine summe abfrage

    PHP-Code:
    SELECT SUM(anzahl) as summe FROM  download_zaehler 
    diese funzt auch einwandfrei, nur wollte ich jetzt das er nicht mehr aus allen feldern der datenbank die summe bildet, sondern nur aus den letzten 10.

    deswegen habe ich datenbank abfrage erweitert auf

    PHP-Code:
    SELECT SUM(anzahl) as summe FROM  download_zaehler order by nummerid desc limit 10 
    diese abfrage macht er aber nicht, sondern nimmt immer noch von allen einträgen die summe...

    ich hoffe ihr könnt mir helfen

  • #2
    du musst zuerst die ids haben, die gezählt werden sollen.

    Code:
    SELECT nummerid FROM download_zaehler order by nummerid desc limit 10;
    diese kannst du dann in einer while-schleife zu einen string in der form
    'nummer1','nummer2',....
    also '1','4','5',.....
    zusammen bauen.

    mit der nun folgenden sql-query solltest du das dann korrekt haben

    Code:
    ## SELECT SUM(anzahl) as summe FROM download_zaehler WHERE nummerid in (deinenummern);
    
    ## demo
    SELECT SUM(anzahl) as summe FROM download_zaehler WHERE nummerid in ('1','4','5');

    oder aber, wenn deine nummern alle zusammenhängend sind.

    Code:
    ## welche nummer ist nummer 10
    SELECT nummerid FROM download_zaehler order by nummerid desc limit 10,0;
    diese nummer hast du dann => z.b. 16

    dann kannst du dies machen.

    Code:
    SELECT SUM(anzahl) as summe FROM download_zaehler WHERE nummerid > 16;
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      Eine Schleife wird eh gebraucht, dann kann man in der auch gleich die Werte addieren:
      PHP-Code:
      $sql_res mysql_query("SELECT anzahl FROM download_zaehler order by nummerid desc limit 10") or die(mysql_error());
      for (
      $sum=0$row mysql_fetch_row($sql_res); )
        
      $sum += $row[0]; 
      mein Sport: mein Frühstück: meine Arbeit:

      Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

      Kommentar

      Lädt...
      X