Thiago M. 0 Denunciar post Postado Agosto 3, 2009 Ola Pessoal Estou fazendo uma consulta aki, onde obtenho como resultado no maximo tres registros, mas podem ser menos. Então preciso que estes sejam mostrados numa mesma linha, separados por ;. A consulta abaixo retorna, os materiais que satisfazem a condição. SELECT material.`descricao` FROM `material` material, `rel_objeto_material` rel_objeto_material, `objeto` objeto WHERE material.id = rel_objeto_material.id and objeto.INVENTARIO = rel_objeto_material.INVENTARIO and objeto.INVENTARIO = $P{INVENTARIO}; O campo inventario é um parametro para esta consulta. Uma possivel resposta é, sendo o número de registros variando de 0 a 3 : latao aço bronze Gostaria de obter uma resposta do tipo: latao; aço; bronze Obrigado Compartilhar este post Link para o post Compartilhar em outros sites
giesta 29 Denunciar post Postado Agosto 4, 2009 SELECT group_concat(material.`descricao`) FROM `material` material, `rel_objeto_material` rel_objeto_material, `objeto` objeto WHERE material.id = rel_objeto_material.id and objeto.INVENTARIO = rel_objeto_material.INVENTARIO and objeto.INVENTARIO = $P{INVENTARIO}; porem assim fica com virgula, pra ser com ; seria SELECT REPLACE( (group_concat(material.`descricao`)) ',' , ';' ) FROM `material` material, `rel_objeto_material` rel_objeto_material, `objeto` objeto WHERE material.id = rel_objeto_material.id and objeto.INVENTARIO = rel_objeto_material.INVENTARIO and objeto.INVENTARIO = $P{INVENTARIO}; Compartilhar este post Link para o post Compartilhar em outros sites