• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Datensätze von SELECT ausschließen

Hesoyam

Neues Mitglied
Hallo
ich habe auf dieser Seite (PlayHouse MusicTV - Hear together) auf der Rechten Seite eine Navigation.
Dort werden alle Alben dem Erscheinungjahr nach geordnet.

Wie man unschwer erkennen kann, kommt CD_Single mehr als 1mal vor.
ich möchte aber, dass es entweder garnicht, oder nur einmal erscheint.

Der Code:
PHP:
<ul>
<li><b>Alben</b></li>
<?
    include('../acp/inc/mysql2.php');
    $query = "SELECT DISTINCT(album), jahr FROM video WHERE autor = '$author' ORDER BY jahr DESC";
    $sql = mysql_query($query)
        or die(mysql_error());
    $alben = array("");
    while ($ds = mysql_fetch_object($sql)) {
        $album = $ds->album;
        $jahr = $ds->jahr;
        
        $alben[] = "$album ($jahr)";
    }
    foreach($alben as $index => $menue) {
?>
<li><a href="http://music.playhouse.de.gg/?al=<?=$menue?>&a=mj" target="_top"><?=$menue?></a></li>
<? } ?>
</ul>
<? } unset($sig, $author);?>
Am besten wäre es, wenn "CD-Single" ausgeschlossen wird, um am Ende der Liste erscheint ....
Aber ich habe keine Idee, wie ich da den Code schreiben muss, da ich das bisher nicht gebraucht habe

Grüsse
und Danke im vorraus
 
So müsste es gehen:
PHP:
    $query = "SELECT DISTINCT(album), jahr FROM video WHERE autor = '$author' AND album <> 'CD-Single' ORDER BY jahr DESC";
Achso, und wenn die Liste ohne Singles abgearbeitet ist nochmal fast dasselbe, aber diesmal "nur" die Singles
PHP:
   $query = "SELECT DISTINCT(album), jahr FROM video WHERE autor = '$author' AND album = 'CD-Single' ORDER BY jahr DESC";
Gruß thuemmy
 
Wenn der Eintrag nur einmal vorkommen soll, hilft dir GROUP_BY, wenn es garnichts vorkommen soll, musst du deine WHERE-Klausel erweitern.

PHP:
"SELECT ... FROM ... WHERE x = y AND album != 'CD-Single';"
 
Zurück
Oben