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

puis en utilisant ce php pour affichergroup_concat MYSQL nouvelle ligne

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

utilisant cette requête renvoie Nom X, Y

mais je préfère avoir les noms ne séparés par des virgules plutôt briser la ligne X puis Y nouvelle ligne

Une idée?

Répondre

4

Je ne comprends pas ce que vous entendez par saut de ligne entre X et Y, mais si vous don'e besoin séparés par des virgules, vous pouvez ajouter un séparateur à Group_Concat comme ça:

group_concat(Name SEPARATOR ' ') as Name 

et ici est Some other Separators vous pouvez utiliser.

+0

Je voulais utiliser
pour que le nom suivant passe à une nouvelle ligne – buni

+0

Le séparateur est juste une chaîne. Les balises HTML n'ont pas de signification particulière en SQL. –

+0

@ ÁlvaroG.Vicario absolument, mais je n'ai pas non pourquoi il renvoie null quand je l'essaye ??? –

7

Je l'ai compris. c'est la bonne façon d'ajouter saut de ligne comme seperator dans le navigateur:

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

Ceci déclenchera une erreur de syntaxe. Vous devez citer des chaînes. –

10

Pour MySQL (ou texte brut) Sortie Vous pouvez utiliser \n comme séparateur:

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

J'utilise ceci très souvent quand j'ai besoin d'obtenir beaucoup de nouvelles valeurs séparées par une ligne dans une rangée pour l'autre traitement.