nur anzeigen wenn mehr als zwei vorhanden

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

  • nur anzeigen wenn mehr als zwei vorhanden

    Hallo zusammen

    mit:

    PHP-Code:
    $query"SELECT * FROM `allerace` ORDER BY `name`"
    $sql mysql_query($query) or die("Anfrage fehlgeschlagen: " mysql_error()); 
    lese ich ja alle Namen aus der Tabelle. Jetzt möchte ich aber nur die Namen angezeigt haben, wenn mehr als 2 gleiche vorhanden sind, also im minimum 3 gleiche Namen und mehr.
    Wie ist das abzufragen
    Besten Dank für eure Hilfe

    Gruss Andreas

  • #2
    GROUP BY und HAVING COUNT sollte dir helfen

    *verschieb zu SQL*

    Kommentar


    • #3
      wie geht das genau?
      In MYSQL habe ich die Spalte teamname in der einer Tabelle allerace.
      Irgend wie so, oder:
      PHP-Code:
      SELECT COUNT(teamname) as Anzahl 
      FROM allerace 
      GROUP BY teamname 
      HAVING 
      (Anzahl>2
      krige das nicht ganz hin.

      Kommentar


      • #4
        Bin einen Schritt weiter mit:
        PHP-Code:
        SELECT teamnameCOUNT(teamname) as Anzahl 
        FROM allerace 
        GROUP BY teamname 
        HAVING 
        (Anzahl>2
        jetzt werden mir die teams mit mehr als 3 Teilnehmer angezeigt, GENIAL!
        Mein nächstes Problem ist, das ich nicht nur die Teams sehen möchte die mehr als drei sind, sonder auch wie die Teilnehmer in dem Teams heissen.

        Kommentar


        • #5
          schon wieder ein kleines Stück weiter.
          PHP-Code:
          SELECT count(*),teamnamenamevorname
                    FROM allerace
                    GROUP BY teamname
                    HAVING count
          (*)>
          Es würden drei Stück mit dem selben Namen bestehen. Mit dem Code bekomme ich aber bis jetzt nur den ersten angezeigt.

          Kommentar


          • #6
            und wieder einen Schritt weiter mit:
            PHP-Code:
            SELECT teamname,name,vorname 
            FROM allerace 
            WHERE teamname IN 

              
            SELECT teamname 
              FROM allerace 
              GROUP BY teamname 
              HAVING 
            (COUNT(*) >2

            jetzt muss ich nur noch die wegbringen die keinen Teamnamen haben und die Zelle leer ist in der Tabelle. Die werden mir leider immer noch angezeigt

            Kommentar

            Lädt...
            X