Mysql
 sql >> Database >  >> RDS >> Mysql

campo db(GROUP_CONCAT) come matrice

In array di database significa tabelle. Se desideri dati in formato array, il modo migliore per archiviare i valori in una tabella temporanea separata.

Mi piace

article_id, category_id, category_name
1           1            Cat1
2           1            Cat1
3           2            Cat2
3           1            Cat1

Oppure devi usare una concatenazione all'interno di group_concat

GROUP_CONCAT(cast(concat(c.id,\': \',c.name) AS char)SEPARATOR \', \') AS categorie_names

Quindi il risultato sarà come 2:Cat2,1:Cat2. Puoi dividere (prima con ',' poi ':') questo valore e recuperare ID e Nome.