Ola, continuando a falar sobre os tipos de juncoes hoje iremos abordar a juncao FULL OUTER JOIN.O operador FULL OUTER JOIN (ou FULL JOIN) tem como funcao unir e retornar os dados de 2 ou mais tabelas utilizando algum dado que seja comum entre elas. De um modo geral esse dado compreende suas chaves primarias e extrangeiras. Para facilitar a compreensao, nesse artigo nao vou utilizar o banco AdventureWorks. Vejamos no script abaixo os resultados que serao retornados.-- Criar tabelas temporariascreate table #FUNCIONARIO( IDFUNC INT, NOME VARCHAR(40), IDDEPAR INT NULL)CREATE TABLE #DEPARTAMENTO(IDDEPAR INT,DESCRI VARCHAR(40))-- Inserir dados para testeINSERT INTO #FUNCIONARIO VALUES(1,'MARIA',NULL)INSERT INTO #FUNCIONARIO VALUES(2,'JOSE',NULL)INSERT INTO #FUNCIONARIO VALUES(3,'JOAO',1)INSERT INTO #FUNCIONARIO VALUES(4,'ANA',2)INSERT INTO #FUNCIONARIO VALUES(5,'SILVA',3)INSERT INTO #DEPARTAMENTO VALUES (1, 'RH')INSERT INTO #DEPARTAMENTO VALUES (2, 'ADM')INSERT INTO #DEPARTAMENTO VALUES (3, 'FIN')INSERT INTO #DEPARTAMENTO VALUES (4, 'PATR')INSERT INTO #DEPARTAMENTO VALUES (5, 'SEG')-- Executar selectSELECT F.IDFUNC, F.NOME, F.IDDEPAR, D.IDDEPAR, D.DESCRI FROM #DEPARTAMENTO D FULL OUTER JOIN #FUNCIONARIO F ON F.IDDEPAR = D.IDDEPAR;-- Resultado do selectAnalisando o resultado podemos chegar a conclusao que o operador FULL JOIN funciona como uma uniao dos operadores LEFT JOIN e RIGHT JOIN. Execute o select abaixo e compare os resultados.-- select com unionSELECT F.IDFUNC, F.NOME, F.IDDEPAR, D.IDDEPAR, D.DESCRI FROM #DEPARTAMENTO D LEFT JOIN #FUNCIONARIO F ON F.IDDEPAR = D.IDDEPARUNIONSELECT F.IDFUNC, F.NOME, F.IDDEPAR, D.IDDEPAR, D.DESCRI FROM #DEPARTAMENTO D RIGHT JOIN #FUNCIONARIO F ON F.IDDEPAR = D.IDDEPAR Ola pessoal, para finalizar a nossa serie de artigos sobre os tipos de juncoes disponiveis no sql server 2008, vamos abordar agora a juncao SELF JOIN. Esta juncao nada mais e do que uma juncao entre a mesma tabela, para isso utilizamos um alias para diferenciar as tabelas. Para exemplificar a utilizacao desse operador vamos utilizar uma tabela temporaria como mostro abaixo:CREATE TABLE #EMPREGADO(ID INT ,IDSUPERIOR INT NULL,NOME VARCHAR(50))INSERT INTO #EMPREGADO VALUES (1,NULL,'BILL')INSERT INTO #EMPREGADO VALUES (2,1,'MARIA')INSERT INTO #EMPREGADO VALUES (3,1,'JOSE')INSERT INTO #EMPREGADO VALUES (4,2,'CARLOS')INSERT INTO #EMPREGADO VALUES (5,3,'ANA')SELECT E.ID, ISNULL(S.NOME,'PRESIDENTE') AS SUPERIOR, E.NOME FROM #EMPREGADO E LEFT JOIN #EMPREGADO S ON S.ID = E.IDSUPERIOR;O resultado mostra a lista de empregados e seus superiores:Veja que no SELF JOIN o operador utilizado e o LEFT JOIN para que o empregado sem superior (presidente) pudesse ser visualizado no resultset. Caso fosse utilizado o INNER JOIN o resultset teria apenas os empregados com chefes. Bom era isso ate a proxima! Acesse o link e veja maiores detalhes:Pirenopolis tera centro de convencoes para fomentar economia local - Cidades DF - Correio Braziliense O Governo de Goias, por meio da Secretaria de Estado da Cultura (Secult Goias), divulga a programacao da 14a edicao do Canto da Primavera, que sera realizado entre os dias 25 e 29 de setembro em Pirenopolis. Neste ano, estarao em na cidade turistica cinco atracoes nacionais e uma internacional, alem dos 30 artistas goianos escolhidos por meio de curadoria independente (os selecionados serao divulgados nesta semana).Na quarta-feira, 25, subira ao palco na abertura do Canto 2013 a cantora revelacao Virginia Rodrigues, descoberta por Caetano Veloso durante ensaio do Bando de Teatro Olodum, em Salvador, em 1997. Virginia Rodrigues e conhecida por levar a seu repertorio cancoes populares e