Abfrage mit Gruppierung und Textverknürfung

sdh

Mitglied
Hallo erst einmal,
als erstes mal die DB Struktur:

Abfrage: "SELECT district.refid, district.name FROM district" liefert das Ergebnis:

refid name
1 Hamburg
1 Hannover
1 Berlin
2 München
2 Dortmund

Gewünscht wäre:
refid zeichenkette
1 Hamburg<br>Hannover<br>Berlin<br>
2 München<br>Dortmund<br>

Ist eine solche Abfrage ohne großen Aufwand machbar?

Gruß
Sascha
 
Zuletzt bearbeitet:
Ist eine solche Abfrage ohne großen Aufwand machbar?

Nein :)

dafür ist SQL nicht gedacht - wenn dann muss sowas mit einer nachfolgenden Scriptsprache
erledigt werden z.b. mit PHP

wenn du Mysql und PHP hast dann geht das so:
PHP:
$erg= mysql_query("SELECT district.refid, district.name FROM district"); 
while ($row = mysql_fetch_array($erg)) {
 if ($id == $row[refid]) {
  echo $row[district]."<br>";
 } else {
  $id = $row[refid];
  echo "\n".$id." ".$row[district]."<br>";
}}
 
Zuletzt bearbeitet:
Das musst du über 2 SQL-Statment lösen.

"SELECT district.refid FROM district GROUP BY refid;"

Das liefert dir zwei Datensätze (1,2). ;-) Und das schmeißen wir doch einfach in ein Array_1.
So als nächstes gehen wir wieder Array_1 durch mit Hilfe einer Schleife (1), und holen uns die Daten die wir wollen.

"SELECT name FROM district WHERE district.refid = " & Array_1(n) &";"

Da bekommen wir alle Städte die die entsprechende ID haben, diese verknüpfen wir diese nun. Vorher wieder in ein Array_2 laden.
Wieder mit einer Schleife (2), damit wir dynamisch bleiben.

result[ String ] = Array_2(nn) & <br>

Schleife (2) schließen
Schleife (1) schließen


PS.:
Sorry ich kann leider kein PHP, aber ich denke das du das Coden schon schafst.:)
 

Neue Beiträge

Zurück