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

Contagem de linhas GROUP_CONCAT() ao agrupar por um campo de texto


Você precisa alterar o max_sort_length para um número maior de sessões ou globalmente conforme sua necessidade. Por padrão, seu valor é 1024 bytes e sua string contém 1170 dados de bytes. Ao aumentar o tamanho, ele fornecerá duas linhas para GROUP_CONCAT .

Verifique este link max_sort_length
SELECT `text` FROM `table` GROUP BY `text`;

SET SESSION max_sort_length = 2000;
SELECT GROUP_CONCAT(`id` SEPARATOR ', ') AS ids FROM `table` GROUP BY `text`;

Verifique a SQL FIDDLE DEMO

EDITAR: BLOB e TEXTO os valores não podem ser usados ​​de forma confiável em GROUP BY , ORENDER POR ou DISTINTO . Apenas o primeiro max_sort_length bytes são usados ​​ao comparar valores BLOB nesses casos. O valor padrão de max_sort_length é 1024 e pode ser alterado na inicialização do servidor ou em tempo de execução.