Select...

Feldhofe

Erfahrenes Mitglied
Hallo!

Kann mir jemand helfen??
Ich schaff's einfach nicht:
Aus einer Tabelle, in der die Daten in der Forum

ID/Interpret/Titel gespeichert sind, will ich die Daten so auslesen, daß jeder Interpret genau einmal dasteht (also wenn es mehrere Songs von B. Spears gibt, soll ihr Name nur einmal dastehen), dahinter die Anzahl der Titel dieses Interpreten.

Die Ausgabe soll also beispielsweise so aussehen:
---
A-Ha (5)
Alan Parsons Project (3)
Alphaville (3)
---

Wie mach ich das??
Es solltenaußerdem nur die Interpreten ausgegeben werden, die mit "A" anfangen.


Gruß und danke schonmal...
Feldhofe
 
PHP:
<?
$anfangsbuchstabe = "A";
$query = "SELECT Interpret, COUNT(*) FROM tabelle WHERE Interpret LIKE '".$anfangsbuchstabe."%' GROUP BY Interpret";
$result = mysql_query($query);

while ($zeile = mysql_fetch_array($result)) {
    echo $zeile['Interpret']." (".$zeile['COUNT(*)'].")<br>";
}
?>
Ungetestet, ohne Garantie.


reima


[edit]Jep, sorry, die Klammer gehört da natürlich nicht hin. Hab's ausgebessert.[/edit]
 
Zuletzt bearbeitet:
Hmmm..leider Parseerrror in der Zeile:
PHP:
$query = "SELECT interpret, COUNT(*) FROM deutsch WHERE interpret LIKE '".$anfangsbuchstabe."%' GROUP BY Interpret");


Aber danke schonmal, Gruß Feldhofe!
 
Ja, daran lag's!
Hab's jetzt mit deiner Hilfe auch hinbekommen, mit Tabelle:

PHP:
<?
$anfangsbuchstabe = "A";
$result = mysql_query("select interpret, count(*) from deutsch WHERE interpret LIKE '".$anfangsbuchstabe."%' group by interpret");

print"<table>";

   function print_result_table1($result)
   {

     while ($row = mysql_fetch_row($result))
           {



     print "
         <tr><td>$row[0]</td>
         <td>($row[1] Texte)</td>
         </tr>"  ;
         }


   echo"</table>";

  }
print_result_table1($result);



?>
 
Zurück