2009-07-07 19 views
1
SELECT

der IWie Werte von MySQL verketten

SELECT name 
FROM table 

Lassen Sie sagen, das mir so etwas wie

foo 
bar 
baz 

und ich brauche gibt alle Werte zu verbinden, es in eine Zeichenfolge wie

zu machen
foo bar baz 

also denke ich, es so etwas wie

wäre
foreach row in (select ...) 
    var += row 

aber ich habe absolut keine Ahnung, wie man es in MySQL schreibt.

Antwort

6

Verwenden GROUP_CONCAT

SELECT GROUP_CONCAT(bar) FROM TABLE GROUP BY foo; 
+0

die NULL NULL, wenn eine der Werte angezeigt werden können. Möglicherweise möchten Sie jede CONCAT-Anweisung ausführen und ISNULL (foo, 'NULL') für jeden Wert ausführen, um sicherzustellen, dass Sie Ergebnisse erhalten. – databyss

+1

Oder fügen Sie einfach eine WHERE-Klausel hinzu, um Nullen auszuschließen. –

+0

Einverstanden, es hängt von den Anforderungen ab. – databyss