Não entendi por que o instrutor usa DISTINCT, quando o UNION já faz o DISTINCT. Pelo menos assim me pareceu, pelos resultados destas duas consultas, que são iguais:
SELECT DISTINCT BAIRRO FROM tabela_de_clientes
UNION
SELECT DISTINCT BAIRRO FROM TABELA_DE_VENDEDORES
SELECT BAIRRO FROM tabela_de_clientes
union
SELECT BAIRRO FROM tabela_de_vendedores
Na verdade também pela lógica não parece fazer sentido. Senão não seria preciso o UNION ALL pra trazer também o que é repetido.
E na verdade, pela lógica (não sei se do SQL, mas pelo a minha, rs) não adiantaria, pra não trazer resultados duplicados, fazer DISTINCT em cada consulta. O UNION já faz um DISTINCT no resultado final da consulta.
Reforçando esse argumento há o fato de que os resultados das duas consultas abaixo são diferentes. A primeira traz 19 resultados, e a segunda, 14.
SELECT BAIRRO FROM tabela_de_clientes
union all
SELECT BAIRRO FROM tabela_de_vendedores;
SELECT DISTINCT BAIRRO FROM tabela_de_clientes
UNION ALL
SELECT DISTINCT BAIRRO FROM TABELA_DE_VENDEDORES
Estou certo, ou me escapou alguma coisa?