Professor, você utilizou em seu exemplos sempre SELECT com DISTINCT. Qual a diferença deu usar o DISTINCT ou não na query com UNION?
Professor, você utilizou em seu exemplos sempre SELECT com DISTINCT. Qual a diferença deu usar o DISTINCT ou não na query com UNION?
Olá Luiz, tudo bem?
Não é necessário utilizar o DISTINCT sempre que for utilizado o UNION, pois o UNION por si só já retorna apenas resultados distintos, diferente do UNION ALL que retorna todos os resultados, mesmo que sejam iguais.
UNION retorna apenas resultados distintos entre as duas tabelas:
UNION ALL retorna todos os resultados, mesmo que sejam repetidos:
UNION com DISTINCT: Retorna apenas resultados distintos dentro das duas tabelas( seria o mesmo caso de utilizar apenas UNION):
UNION ALL com DISTINCT retornara apenas resultados distintos entre os duas tabelas(Se existe vendedores e clientes com o mesmo bairro, será retornado um valor para cada tabela):
Então Luiz, não é necessário utilizar o DISTINCT sempre que for utilizado o UNION, o instrutor utilizou durante o curso, pelo fato dele ter precisado do DISTINCT em seus exemplos.
Espero ter esclarecido a sua dúvida, qualquer coisa é só falar e bons estudos!