tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
2
ZUGRIFFE
847
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von loki2002
    loki2002 loki2002 ist offline Mitglied Platin
    Registriert seit
    Jan 2002
    Ort
    011000110011011000110100
    Beiträge
    614
    Hallo,

    ich moechte gerne via count(*) und sum (*) ergebnisse aus mehreren tabellen addieren lassen... probiert habe ich es so (nur erstmal mit count()..

    $addieren = mysql_query("SELECT count(post) FROM sub1,sub2,sub3 ....");
    $endsumme = mysql_result($addieren,0);

    naja ergebnis war natuerlich 'fehler-meldung' ... denke mal das ich das mit LEFT JOIN fuer jde neue tabelle... oder?

    so in etwa:

    $addieren = mysql_query("SELECT count(post), sum(post) AS a FROM sub1 LEFT JOIN sub2 ...");
    $endsumme = mysql_result($addieren,0);

    oder bin ich total auf dem holzweg?

    waere nett wenn mir jemand helfen koennte, vielen Dank.

     

  2. #2
    Registriert seit
    Jan 2002
    Ort
    Bayern
    Beiträge
    1.390
    Also rein SQL-technisch geht das so glaub ich net, denn count() und sum() sind Aggregat-Funktionen in SQL. Und diese dürfen nur aus einer Tabelle kommen (heißt nicht, das in der WHERE-Klausel nicht Bezüge zu anderen Tabellen sein dürfen). Außerdem dürfen die Aggregat-Funktionen nur auf eine Spalte angewendet werden.

    Eine Möglichkeit wäre das ganze über mehrere Querys zu machen.


    Gruß Homer
     
    we would change the world if god gave us the source code...
    and remember, science is nothing more than reverse engineering nature...

    Current projects:
    - LdrawConverter

  3. #3
    Avatar von loki2002
    loki2002 loki2002 ist offline Mitglied Platin
    Registriert seit
    Jan 2002
    Ort
    011000110011011000110100
    Beiträge
    614
    ja scheint wirklich nicht zu gehen... und wenn dann habe ich t1 und t2 multipliziert *g* ... ich hab das problem anders geloest .. (bzw. es wurde mir geholfen!)

    /*
    "select max(t1.post) + max(t2.post).... FROM t1,t2...."
    ****t auch ganz gut.. vorrausgesetzt die spalte 'id' ist komplett 1-x
    */

    ist momentan auch nur eine notloesung.

    mehrere queries moechte ich moeglichst vermeiden, weil es dann doch mal zu performance bzw ausfaellen kommen kann... bei 100 leuten wuerde das immerhin ~1000 db connects ausmachen ...
    Geändert von loki2002 (28.06.02 um 21:33 Uhr)
     

Ähnliche Themen

  1. MySQL - COUNT() über 2 Tabellen
    Von proloser im Forum Relationale Datenbanksysteme
    Antworten: 2
    Letzter Beitrag: 09.10.10, 16:09
  2. count + group über 2 Tabellen?
    Von Dr_Doom im Forum Relationale Datenbanksysteme
    Antworten: 2
    Letzter Beitrag: 08.08.08, 08:49
  3. [MySQL] SELECT und COUNT in 2 Tabellen
    Von prey2003 im Forum Relationale Datenbanksysteme
    Antworten: 1
    Letzter Beitrag: 14.02.07, 14:03
  4. Count über mehrere Tabellen
    Von maweg im Forum Relationale Datenbanksysteme
    Antworten: 6
    Letzter Beitrag: 31.08.04, 17:18
  5. Count über mehrer Tabellen
    Von xbtequila im Forum Relationale Datenbanksysteme
    Antworten: 1
    Letzter Beitrag: 04.08.04, 08:32