2011-11-27 19 views
9
group_concat(A,' ',B,' ',C) as Name, 

następnie przy użyciu tego php za wyświetlanieGROUP_CONCAT MYSQL nowa linia

<td><?php echo $row['Name']; ?></td> 

użyciu tej kwerendy Zwraca nazwę X, Y

ale wolę mieć nazwiska nie oddzielonych przecinkami raczej linia złamać X , a następnie Y nowa linia

Masz pomysł?

Odpowiedz

4

Nie rozumiem co masz na myśli przez podział wiersza między X i Y, ale jeśli trzeba don'e oddzielonych przecinkami można dodać dowolną separator do Group_Concat tak:

group_concat(Name SEPARATOR ' ') as Name 

i tutaj to jest Some other Separators, którego możesz użyć.

+0

Chciałem użyć
, aby następna nazwa trafiła do nowej linii – buni

+0

Separator to tylko ciąg znaków. Znaczniki HTML nie mają specjalnego znaczenia w SQL. –

+0

@ ÁlvaroG.Vicario absolutnie, ale nie nie ma powodu, dlaczego zwraca null, gdy próbuję go? –

7

Wymyśliłem to. to jest poprawny sposób, aby dodać podział wiersza jako separatora w przeglądarce:

group_concat(A,' ',B,' ',C separator '<br>') as Name, 
+1

Spowoduje to błąd składni. Musisz cytować ciągi. –

10

dla MySQL (lub zwykły tekst) Wyjście można użyć \n jako separator:

SELECT GROUP_CONCAT(column1 SEPARATOR '\n') FROM table1; 

używam to bardzo często, gdy potrzebuję uzyskać wiele wartości oddzielonych od siebie liniami w jednym wierszu dla innego przetwarzania.