Hi,
es handelt sich zwar nicht um ein Problem mit dem MySQL-Server, aber ich hoffe trotzdem, dass ich hier richtig aufgehoben bin.
Problem ist Folgendes:
Ich habe eine Datenbanken mit Adressen. Nun will ich zu Statistik-Zwecken die Daten nach PLZ gruppieren und verschiedene Sachen aggregieren (Anzahl an Einträgen z.B.).
(Soweit kein Problem)
Ein richtig schönes Feature wäre die Konkatenation der Orte zu den PLZ, so dass am Ende pro PLZ eine Zeile als Resultat gegeben wird, in welcher ein Ergebniswert die Konkatenation aller Orte darstellt, die zu der PLZ gespeichert sind.
Bisher habe ich:
CONCAT_WS(',',ort) funktioniert aber nicht so wie gedacht. Das CONCAT_WS hat gar keine Wirkung. Es wird immer nur der erste Ergebniswert einer Gruppe ausgegeben, als ob kein CONCAT_WS da stehen würde.
Für google fehlen mir irgendwie die falschen Suchbegriffe, da ich immer wieder zu CONCAT oder CONCAT_WS komme,...
Das Problem nochmal in einem Beispiel (fiktive PLZ!!):
Tabelleninhalt:
12345 - Köln
12345 - Düsseldorf
67890 - München
Gewünschtes Ergebnis des Querys:
12345 - Köln, Düsseldorf
67890 - München
Ich hoffe ich werde jetzt nicht ermordet, weil im Beispiel Köln und Düsseldorf die gleiche PLZ haben
Vielen Dank im Voraus!
Dennis
es handelt sich zwar nicht um ein Problem mit dem MySQL-Server, aber ich hoffe trotzdem, dass ich hier richtig aufgehoben bin.
Problem ist Folgendes:
Ich habe eine Datenbanken mit Adressen. Nun will ich zu Statistik-Zwecken die Daten nach PLZ gruppieren und verschiedene Sachen aggregieren (Anzahl an Einträgen z.B.).
(Soweit kein Problem)
Ein richtig schönes Feature wäre die Konkatenation der Orte zu den PLZ, so dass am Ende pro PLZ eine Zeile als Resultat gegeben wird, in welcher ein Ergebniswert die Konkatenation aller Orte darstellt, die zu der PLZ gespeichert sind.
Bisher habe ich:
Code:
SELECT plz, CONCAT_WS(',',ort) as orte, SUM(`anz`) AS summe, COUNT(*) AS anzahl
FROM tabelle
WHERE jahr=".$statistic_year."
GROUP BY plz
ORDER BY plz ASC
CONCAT_WS(',',ort) funktioniert aber nicht so wie gedacht. Das CONCAT_WS hat gar keine Wirkung. Es wird immer nur der erste Ergebniswert einer Gruppe ausgegeben, als ob kein CONCAT_WS da stehen würde.
Für google fehlen mir irgendwie die falschen Suchbegriffe, da ich immer wieder zu CONCAT oder CONCAT_WS komme,...
Das Problem nochmal in einem Beispiel (fiktive PLZ!!):
Tabelleninhalt:
12345 - Köln
12345 - Düsseldorf
67890 - München
Gewünschtes Ergebnis des Querys:
12345 - Köln, Düsseldorf
67890 - München
Ich hoffe ich werde jetzt nicht ermordet, weil im Beispiel Köln und Düsseldorf die gleiche PLZ haben
Vielen Dank im Voraus!
Dennis