KUROL3 3 Denunciar post Postado Dezembro 17, 2008 Olá estou fazendo a sengunte union.... quando os ids são iguais no select o mysql_num_rows(); na union junta os campos.... EXEMPLO tipo tabela 1 tem id 1 e 2 tipo tabela 2 tem id 3 e 4 tipo tabela 3 tem id 5 e 6 tipo tabela 4 tem id 7 e 8 tipo tabela 5 tem id 1 e 2 nesse caso a saida é 8 registros, e não 10 como seria o correto.... alguem ja passou por issu.. SE NA TABELA 1 O ID 1 E 2 É IGUAL A TABELA 5 QUE TB É 1 E 2 A SAIDA NÃO E 4 E SIM 2.. ( SELECT SC.id FROM saidadechaves SC INNER JOIN imoveis I ON SC.id_imovel = I.id INNER JOIN usuarios U ON U.id = SC.id_usuario WHERE SC.id_cliente = '12962' ) UNION ( SELECT SP.id FROM saidadeproposta SP INNER JOIN imoveis I ON SP.id_imovel = I.id INNER JOIN usuarios U ON U.id = SP.id_usuario WHERE id_cliente = '12962' ) UNION ( SELECT SAV.id FROM saidaautorizacaovisita SAV INNER JOIN imoveis I ON SAV.id_imovel = I.id INNER JOIN usuarios U ON U.id = SAV.id_usuario WHERE SAV.id_cliente = '12962' ) UNION ( SELECT AT.id FROM atendimento AT INNER JOIN usuarios U ON U.id = AT.id_usuario WHERE AT.id_cliente = '12962' ) UNION ( SELECT OA.id FROM ordem_atendimento OA INNER JOIN usuarios U ON U.id = OA.id_usuario WHERE OA.id_cliente = '12962' ) ABRACO KUROLE Compartilhar este post Link para o post Compartilhar em outros sites
giesta 29 Denunciar post Postado Dezembro 17, 2008 nesse caso a saida é 8 registros, e não 10 como seria o correto.... alguem ja passou por issu.. 8 é o correto em matematica da escola qual eh a a uniao dos conjunto (1,2,3) com o conjunto (3,4,5) ? (1,2,3)U(3,4,5) A resposta eh (1,2,3,4,5) e nao (1,2,3,3,4,5) se você quer q os elementos se repitam entao você tem q usar o UNION ALL aih sim da (1,2,3,3,4,5) ou seja : UNION ALL -> empilha as respostas UNION -> empilha as respostas mas tem um 'GROUP BY' ou 'DISTINCT' embutido automaticamente Compartilhar este post Link para o post Compartilhar em outros sites
KUROL3 3 Denunciar post Postado Dezembro 17, 2008 Valew... UNION ALL resolveu... Abraço.. marco Compartilhar este post Link para o post Compartilhar em outros sites