Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

db field(GROUP_CONCAT) como array


Em array de banco de dados significa tabelas. Se você deseja dados em formato de matriz, a melhor maneira de armazenar os valores em uma tabela temporária separada.

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

Ou você tem que usar uma concatenação dentro do group_concat
GROUP_CONCAT(cast(concat(c.id,\': \',c.name) AS char)SEPARATOR \', \') AS categorie_names

Então o resultado será como 2:Cat2,1:Cat2. Você pode dividir (primeiro com ',' depois ':') esse valor e recuperar ID e Nome.