Olá Pessoal, boa noite!
Preciso da ajuda de vocês, não consigo uma solução para o meu problema.
Preciso preencher uma tag select com nomes de autores vindo do mysql, sem repetir a informação e ordenado.
Até aí tudo bem! A princípio é simples, usando GROUP BY autores e ORDER BY autores.
O problema é quando tenho vários autores em um mesmo registro separados por ponto-e-vírgula.
Ex.: Silva, JO.; Oliveira, S.; Andrade, C.; Santos, M.
Em outros registros posso ter somente um autor, e podendo repetir.
Ex: Santos, M.
Ex: Moreira, J.
Então, faço uma lista separando cada registro por ponto-e-vírgula
while($autores = $lstAutores->fetch()) {
$lista_de_autores .= $autores[autor].';';
}
O resultado deve ficar assim:
Moreira, J.
Santos, M.
Silva, JO.; Oliveira, S.; Andrade, C.; Santos, M.
Depois uso o EXPLODE:
$autores_selecionados = explode(";", $lista_de_autores);
Com o desmembramento, já se perde a função GROUP BY e ORDER BY.
Nesse ponto eu tenho a seguinte listagem indesejada.
Moreira, J.
Silva, JO.
Oliveira, S.
Andrade, C.
Santos, M.
Santos, M.
É possível depois desse processo, reagrupar e reorganizar de alguma forma?
Desde já agradeço a atenção!
Abraço!
Jackson