我需要你的帮助来解决这个问题:
select idiomas.bandeira,conteudos.nid, dreg, titulo, tag from conteudos
inner join conteudos_tag on conteudos.nid = conteudos_tag.cod_conteudo
inner join tagstree on conteudos_tag.cod_tag = tagstree.nid
inner join idiomas on conteudos.nid_idioma = idiomas.nid
order by conteudos.nid desc limit 5
这回归:
img/idiomas/pt.png;30;2013-04-04 12:41:00;titulo;Voip
img/idiomas/pt.png;30;2013-04-04 12:41:00;titulo;Linux
img/idiomas/pt.png;28;2012-08-07 01:50:18;Números e Tarifários;Números e tarifários
img/idiomas/pt.png;27;2012-08-07 01:33:48;Terminais VoIP2;Terminais
img/idiomas/pt.png;26;2012-08-03 19:06:13;Rede Estruturada;Rede Estruturada
我需要回报这个:
img/idiomas/pt.png;30;2013-04-04 12:41:00;titulo;Voip, Linux
img/idiomas/pt.png;28;2012-08-07 01:50:18;Números e Tarifários;Números e tarifários
img/idiomas/pt.png;27;2012-08-07 01:33:48;Terminais VoIP2;Terminais
img/idiomas/pt.png;26;2012-08-03 19:06:13;Rede Estruturada;Rede Estruturada
更改在第1行
韩国社交协会 锐
答案 0 :(得分:2)
嗯,有点难以说,因为我真的不知道哪个列是哪个,但我估计:
select idiomas.bandeira,conteudos.nid, dreg, titulo,
GROUP_CONCAT(tag, SEPARATOR ', ') AS tag from conteudos
inner join conteudos_tag on conteudos.nid = conteudos_tag.cod_conteudo
inner join tagstree on conteudos_tag.cod_tag = tagstree.nid
inner join idiomas on conteudos.nid_idioma = idiomas.nid
GROUP BY conteudos.nid
order by conteudos.nid desc limit 5
这将通过看似独特的nid
对所有结果进行分组。如果同一nid
有多个标记,则它们将存储在一列中,并以,
分隔。在所有非聚合列上进行分组可能更准确,如果还有其他非唯一列,也可以使用GROUP_CONCAT
。