GROUP_CONCAT alterar GROUP BY order
Tenho uma VIEW (muitas junções) que gera dados ordenados por uma data ASC. Funciona como esperado.
OUTPUT semelhante a:
ID date tag1 other_data
1 25-03-2011 blue fff <=
1 26-03-2011 red ggg
1 27-03-2011 pink yyy
2 25-03-2011 red yyy <=
2 26-03-2011 orange rrr
Se eu aplicar um GROUP BYID
. Para as outras colunas, o MySQL gera a primeira linha encontrada de cada ID. Eu li isso em algum lugar nos documentos.
SELECT * FROM `myVIEW`
GROUP BY `ID`
ID date tag1 other_data
1 25-03-2011 blue fff <=
2 25-03-2011 red yyy <=
Agora vamos adicionar um GROUP_CONCAT tags1
)
SELECT *,CONCAT_GROUP(`tag1`) AS `tags`
FROM `myVIEW`
GROUP BY `ID`
Desde que aplico o CONCAT_GROUP, os resultados ficam estranhos. Eu estava esperando
ID date tag1 other_data tags
1 25-03-2011 blue fff blue,red,pink
2 25-03-2011 red yyy red,orange
A consulta está retornando, por exemplo:
ID date tag1 other_data tags
1 26-03-2011 red ggg blue,red,pink
2 25-03-2011 red yyy red,orange
Parece que GROUP_CONCAT não preserva mais o pedido VIEW. Isso é normal