Guinsilva 0 Denunciar post Postado Junho 25, 2012 Olá, a alguns dias eu postei uma dúvida sobre um sistema que estou fazendo que envolve mais de uma tabela. Como havia falado anteriormente, nele há diversas categorias diferentes e cada uma delas possui uma tabela própria no banco de dados. Para que pudesse organizar todas essas tabelas eu criei uma outra chamada "sumario" para guardar o nome da categoria e o id das demais. Minha dúvida anterior foi resolvida, porém eu estava organizando a tabela baseada em dados que havia na tabela de sumário (que no caso era id do mesmo) só que o cliente quer que eu organize de acordo com o título dos artigos. Há alguma maneira de unir as colunas de título de diversas tabelas diferentes e organiza-las em ordem alfabética? Por hora o código está assim: $sql = "SELECT * FROM sumario, coreografias, dancas, escolas WHERE ( ( coreografias.id_autor_coreografias = '". addslashes($_SESSION["id_usuario"]) ."' OR coreografias.id_editor_coreografias = '". addslashes($_SESSION["id_usuario"]) ."' ) AND sumario.id_categoria_sumario = coreografias.id_coreografias AND sumario.categoria_sumario = coreografias.categoria_coreografias ) OR ( ( dancas.id_autor_dancas = '". addslashes($_SESSION["id_usuario"]) ."' OR dancas.id_editor_dancas = '". addslashes($_SESSION["id_usuario"]) ."' ) AND sumario.id_categoria_sumario = dancas.id_dancas AND sumario.categoria_sumario = dancas.categoria_dancas ) OR ( ( escolas.id_autor_escolas = '". addslashes($_SESSION["id_usuario"]) ."' OR escolas.id_editor_escolas = '". addslashes($_SESSION["id_usuario"]) ."' ) AND sumario.id_categoria_sumario = escolas.id_escolas AND sumario.categoria_sumario = escolas.categoria_escolas ) GROUP BY sumario.id_sumario ORDER BY sumario.data_postagem_sumario DESC, sumario.id_sumario DESC"; E o nome das coluna de título estão respectivamente em cada tabela como "titulo_coreografias", "titulo_dancas" e "titulo_escolas". Compartilhar este post Link para o post Compartilhar em outros sites
aline_ 4 Denunciar post Postado Junho 26, 2012 Oi Guinsilva, Usando UNION você consegue ordenar todos os selects pelo mesmo campo. Compartilhar este post Link para o post Compartilhar em outros sites
Guinsilva 0 Denunciar post Postado Junho 29, 2012 O que achei sobre UNION ele une os campos que possua nomes iguais, mas no banco de dados os campos possuem nomes únicos ("titulo_coreografias", "titulo_dancas" e "titulo_escolas"). Tem alguma maneira de uni-los mesmo tendo nomes diferentes? Compartilhar este post Link para o post Compartilhar em outros sites
aline_ 4 Denunciar post Postado Junho 29, 2012 Sim, renomeia os campos no select: "SELECT titulo_coreografias as titulo FROM coreografias WHERE ... UNION ALL SELECT titulo_dancas as titulo FROM dancas WHERE ... UNION ALL SELECT titulo_escolas as titulo FROM escolas WHERE ... ORDER BY titulo Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Junho 29, 2012 Vale sempre o "alias" do 1º select. Compartilhar este post Link para o post Compartilhar em outros sites
Guinsilva 0 Denunciar post Postado Julho 3, 2012 Consegui fazer da maneira que falou. Mais uma vez muito obrigado pela ajuda de vocês. Compartilhar este post Link para o post Compartilhar em outros sites