Ergebnis 1 bis 9 von 9

Thema: min/max/avg einer gruppierten Summe

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Avatar von SebbyPHM
    Registriert seit
    17.07.2006
    Beiträge
    844
    Zitat Zitat von cdp Beitrag anzeigen
    Code:
    SELECT 
              COUNT(*) AS teilnehmer, 
              SUM(bis-von) AS gesamt, 
              MIN(bis-von) AS min, 
              MAX(bis-von) AS max, 
              AVG(bis-von) AS avg 
    FROM 
              verlosung 
    GROUP BY 
              uid 
    LIMIT 1
    Warum machst du ein GROUP BY uid, und ein COUNT(*) AS teilnehmer?

    -->

    Code:
    SELECT 
              COUNT(uid) AS teilnehmer, 
              SUM(bis-von) AS gesamt, 
              MIN(bis-von) AS min, 
              MAX(bis-von) AS max, 
              AVG(bis-von) AS avg 
    FROM 
              verlosung 
    LIMIT 1
    ??
    Mit freundlichem Gruß
    SebbyPHM




  2. #2
    Zitat Zitat von SebbyPHM Beitrag anzeigen
    Code:
    SELECT 
              COUNT(uid) AS teilnehmer, 
              SUM(bis-von) AS gesamt, 
              MIN(bis-von) AS min, 
              MAX(bis-von) AS max, 
              AVG(bis-von) AS avg 
    FROM 
              verlosung 
    LIMIT 1
    ??
    Da kommt als Teilenehmer (bei Grmlins Beispiel) aber 2 raus, obwohls 2x die selbe uid ist und Grmelin dann das nur als einen zählen will


  3. #3
    Erfahrener Benutzer
    Registriert seit
    11.01.2007
    Beiträge
    278
    Jetzt verstehe ich erst das Prinzip von der Tabelle glaub ich. Das sollen jeweils die Positionen sein, die der User jeweils hält. Naja, ändert ja nicht viel, außer das ich im obigen Beispiel etwas abstrakte Werte angegeben habe.

    Nehmen wir mal das Beispiel :

    1 | 0 | 100
    1 | 101| 203
    2 | 300 | 330
    2 | 340 | 410
    3 | 500 | 560

    Also eine Abfrage für :

    1.) Gesamtanzahl der Teilnehmer
    2.) Gesamtanzahl von Positionen im System
    3.) Anzahl der Positionen, die der User mit den meisten Positionen insgesamt hält
    4.) Anzahl der Positionen, die der User mit den wenigsten Positionen insgesamt hält
    5.) Die Anzahl der Positionen, die jeder User durchschnittlich hält

    Mittlerweile ist mir da auch etwas zu eingefallen :

    Code:
     SELECT COUNT( DISTINCT uid ) AS teilnehmer, SUM( bis - von ) AS gesamt, MAX( (
    
    SELECT SUM( bis - von )
    FROM verlosung
    GROUP BY uid
    ORDER BY bis - von DESC
    LIMIT 1 )
    ) AS max, MIN( (
    
    SELECT SUM( bis - von )
    FROM verlosung
    GROUP BY uid
    ORDER BY bis - von ASC
    LIMIT 1 )
    ) AS min
    FROM verlosung
    Das AVG schenken wir uns in der Abfrage, weil das ja eigentlich (gesamt/teilnehmer) sein sollte.

    Richtig?^^

  4. #4
    Erfahrener Benutzer Avatar von Gremlin
    Registriert seit
    05.07.2006
    Beiträge
    5.206
    @VMS1
    Genau so ist es . Super, danke dir!
    Diskutiere nie mit Idioten - sie holen Dich auf ihr Niveau und schlagen Dich dort mit Erfahrung!



Ähnliche Themen

  1. Summe berechnen Doppler
    Von the-carnage im Forum Support zu Addons & Erweiterungen
    Antworten: 15
    Letzter Beitrag: 17.05.2015, 13:11
  2. Ich bekomme die summe nicht ausgelesen
    Von brokerp25 im Forum Support zum VMSone
    Antworten: 7
    Letzter Beitrag: 01.08.2014, 16:45
  3. StatSpicker mit Summe aller Auszahlungen - wie?
    Von Rallef im Forum Support zu Addons & Erweiterungen
    Antworten: 6
    Letzter Beitrag: 19.03.2009, 17:32
  4. [S] Hilfe bezüglich einfügen einer Tabelle auf einer VMS Seite
    Von st.pauliblau im Forum [HD] Programmieren
    Antworten: 10
    Letzter Beitrag: 30.09.2007, 18:49
  5. wiederbelebung einer währung
    Von dude32 im Forum Ref & Werberhandel
    Antworten: 0
    Letzter Beitrag: 29.12.2006, 16:24

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •