PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : SQL-Abfrage aufteilen


AlexD
29.11.2005, 16:01:49
Hallo,

ich hab ein Problem wo ich nicht so recht weiß wie ich es angehen soll bzw am einfachsten lösen könnte.

Es handelt sich um eine Abfrage die mir die Titel von einem CD-Sampler anzeigen soll. Das Problem ist nun das viele Sampler aus 2 CD's oder mehr bestehen.
Ich würde es gerne so machen:

CD 1
01 Interpret Track
02 Interpret Track
.
.

CD 2
01 Interpret Track
02 Interpret Track

in der Datenbank gibt es eine Spalte 'CD' die dann mit der CD-Nr. gefüllt ist (1,2,3.... soviele wie der Sampler eben hat). Standartmäßig ist die Spalte SMALLINT(2) NULL NOT NULL mit 0 belegt.

im Moment hab ich eine ganz einfache Abfrage, die aber sehr unübersichtlich ist, es fehlt eben eine Leerzeile zwischen den CD's und eben die Überschrift CD 1, CD 2 usw...


<?php

$result=mysql_query("SELECT d.*, s.* FROM daten d, sampler s
WHERE d.sampler_id='$sampler_id'
AND s.sampler_id=d.sampler_id
ORDER BY cd, sampler_track", $db);
if(!$result) {echo mysql_error($db);}
while ($data = mysql_fetch_array($result)){
if ($data['sampler_track'] == 0) $track = 'k.A.';
elseif ($data['sampler_track'] < 10) {
$track = "0{$data['sampler_track']}";
} else {
$track = $data['sampler_track'];
}
echo "<font size=\"2\" face=\"Arial, Helvetica, sans-serif\">";
echo "$track. {$data['interpret']}: {$data['titel']} - {$data[zeit]} <a href=\"{$data['link']}\">Play</a></font> <br>";
}
?>


Geht das in einem Aufwasch zu realisieren, oder muß ich für jede CD eine extra Abfrage machen??

Gruß
Alex