Artigonal.com - Leia e Publique Artigos
Diretório de Artigos Gratuitos
01.12.2008 Login Cadastro Olá
E-mail:
Senha:
Salve meus dados neste computador 


Consultas com JOINS

Por: Thiago Caserta Ranking do Autor Azul | Publicado em: 11-02-2008 | Comentários: 0 | Acessos: 257 | Avaliação:  (114) Ranking do Artigo Azul (?)

Quando comecei na área de TI, sempre me deparava com situações no SQL em que precisava pegar campos de outras tabelas não vinculadas diretamente com a que estamos manipulando, e sentia certa dificuldade em amarrar as tabelas pelas suas respectivas chaves, fossem elas código, id, usuário, etc.

Bem, algo que é de extrema ajuda nesses casos são os nossos amigos JOINs (LEFT JOIN, RIGHT JOIN, INNER JOIN e FULL JOIN).

Hoje percebo que muitos daqueles que estão começando na área de TI sentem o mesmo.

Junções, tradução de JOINs, são utilizadas em duas cláusulas específicas: FROM e WHERE, eu particularmente prefiro usar na cláusula FROM, por questões de desempenho e organização.

Neste artigo vamos analisar algumas consultas possíveis com essas poderosas cláusulas. Então: Let s JOIN!

A princípio vamos entender o primeiro JOIN mencionado, o LEFT JOIN.

Como podemos observar, e a própria sintaxe indica, essa cláusula trabalha com os dados da tabela "Esqueda" como sendo os dados principais, ou seja, de acordo com o exemplo abaixo, o LEFT JOIN mostrará o que esta na Tabela1 (esquerda), podendo trabalhar também com qualquer outro dado da Tabela2 com a mesma chave encontrada na Tabela1.

Os dados principais que estaremos trabalhando serão os da Tabela1, já que esta, como já mencionado, é a nossa tabela " Esquerda ".

SELECT Tab1.* FROM Tabela1 Tab1
LEFT JOIN Tabela2 Tab2 ON Tab1.Cod = Tab2.Cod

Podemos fazer a mesma amarração junto à cláusula WHERE assim como no exemplo abaixo onde estamos pegando os mesmos valores do exemplo acima.

SELECT Tab1.* FROM Tabela1 Tab1, Tabela2 Tab2
WHERE Tab1.Cod *= Tab2.Cod

Nesse exemplo os sinais " *= " indicam a condição LEFT JOIN.

Partiremos agora para o irmão mais próximo do LEFT JOIN, o RIGHT JOIN.

O RIGHT JOIN retorna o que estiver na Tabela1 e Tabela2 com a mesma chave, e sendo o inverso do LEFT JOIN a tabela principal se torna a tabela da " Direita ", ou seja a Tabela2.

SELECT Tab2.* FROM @Tabela1 Tab1
RIGHT JOIN @Tabela2 T2 ON Tab1.Cod = Tab2.Cod

Do mesmo modo que podemos utilizar o LEFT JOIN na cláusula WHERE podemos fazer assim também com o RIGHT JOIN.

SELECT Tab2.* FROM @Tabela1 Tab1, @Tabela2 Tab2
WHERE T1.Cod =* T2.Cod

Observe que o sinal no RIGHT JOIN é diferente do LEFT JOIN, de "Asterisco ="mudamos para"= asterísco ".
Alteramos o asterisco da esquerda para a direita, o que se torna uma ajuda para não confundirmos as cláusulas.

LEFT JOIN - Asterisco à esquerda;
RIGHT JOIN - Asterisco à direita.

Desse ponto partiremos para os dois últimos JOINS, o INNER JOIN e o FULL JOIN.
O INNER JOIN nos retorna apenas o que esta na Tabela1 e Tabela2 com a mesma chave.

Exemplo:

SELECT * FROM @Tabela1 T1
INNER JOIN @Tabela2 T2 ON T1.Cod = T2.Cod

Assim como o LEFT JOIN e o RIGHT JOIN, podemos da mesma forma fazer essa amarração junto à cláusula WHERE, como segue o exemplo:

SELECT * from @Tabela T1, @Tabela2 T2
WHERE T1.Cod = T2.Cod

Nesse exemplo o sinal " = " indica a função INNER JOIN.

Já O FULL JOIN retorna o que estiver na Tabela1 e Tabela2 levando em conta o seu significado FULL, ou seja, completo. Portanto o FULL JOIN retorna tudo o que há nas Tabelas selecionadas

SELECT * FROM @Tabela1 T1
FULL JOIN @Tabela2 T2 ON T1.Cod = T2.Cod

Bem, essas são as 4 cláusulas mais utilizadas para fazermos amarrações entre tabelas ou pegarmos valores relacionados. Com certeza é de grande ajuda para todos os que fazem uso de banco de dados independentemente de qual seja.

Espero que esta matéria tenha sido de grande ajuda para àqueles que estão começando ou sentem dificuldades nesse assunto.

Até a próxima!

Avalie este artigo: Current: 5 / 5 stars - 3 vote(s).

Fonte Artigos Gratuitos Online - Artigonal.com

Imprima este Artigo Imprimir artigo   Envie o Artigos a um amigo Enviar a um amigo   Publique este Artigo no seu site Publique este Artigo   Mande mensagem ao Autor Mensagem ao autor  
Thiago CasertaPerfil o autor:

Thiago Caserta é Graduando em Análise de Sistemas pela Metrocamp em Campinas/SP, formado em Sistemas de Informação pelo Politécnico Bento Quirino, possui certificações IBM e Solectron de Soluções Corporativas em TI , Networking pela D-Link Institute Technology e práticas de e-commerce e EDI pela EAN Brasil. Bons conhecimentos em construtores de aplicações e editores tais como Visual Studio e Eclipse.Trabalha atualmente como desenvolvedor .NET e SQL Server na empresa APTUS Tecnologia em Informação em Campinas, atuou em empresas renomeadas na área de web utilizando as tecnologias PHP, AJAX e JAVA.

Submeter artigos se tornou um dos meios os mais populares de gerar links de qualidade e tráfego para o seu site. CADASTRE-SE JÁ, É DE GRAÇA!

Comentários

Comente este artigo Comente este artigo
Nome
E-mail:
Comentário
Digite o código de segurança: Captcha


Artigos Relacionados

Problemas com modelos de aplicações web
Por: Caio Azevedo | 14/02/2008 | Programação
Em minhas recentes atividades como arquiteto de soluções .net, deparei em alguns clientes com uma situação no mínimo inusitada...

Especial sobre .Net
Por: Caio Azevedo | 14/02/2008 | Programação
Estamos a beira de uma revolução, a plataforma .Net é um fato, boa parte dos desenvolvedores seguirá esse caminho. Enquanto isso na “vida real” nos deparamos todo dia com a boa e velha formula: ASP, VB 6.0/COM+, JavaScript, SQL Server. E é nesse ambiente que tenho dedicado meu tempo nos últimos seis meses, e o que pretendo nesse espaço é compartilhar o que aprendemos nesse período.

ADO .NET - Recomendações para estratégia de acesso a dados
Por: José Carlos Macoratti | 17/02/2008 | Programação
Se você está iniciando o aprendizado ou migrando para a plataforma .NET, pode estar confuso quando o assunto é acesso a dados. Motivos não faltam, afinal você tem a sua disposição diversas opções na plataforma .NET para realizar acesso a dados com classes e métodos distintos: DataSets, DataReaders, XML, TableAdapters, DataAdapter, Command, etc.

O novo modelo de compilação e os novos controles
Por: José Carlos Macoratti | 17/02/2008 | Programação
Com o advento da ASP.NET 2.0, houve uma grande mudança em relação as versões anteriores 1.x. O processo de criação de uma aplicação Web Form na versão 2.0 não depende mais da definição de um diretório virtual. Não existe também na nova versão um projeto ASP.NET web.

A Gestão de Requisitos
Por: José Carlos Macoratti | 17/02/2008 | Programação
Conhecer e dominar uma linguagem de programação é bom, mas não é tudo. Para criar sistemas robustos e com qualidade, é preciso mais do que uma boa linguagem e um bom programador.

Segurança - Trocando A Porta Do Sql Server 2000
Por: Tulio Rosa | 24/05/2008 | Programação
Existem várias configurações que podemos fazer para garantir a segurança do banco de dados, entre elas temos a opção de alterar a porta default utilizada nas conexões, fazendo isso somente as solicitações direcionadas a nova porta terão respostas, as demais receberão erros como se o banco não existisse.

Últimos Informática artigos

Software Livre_Passado, Presente Futuro
Por: Alexandre Silveira | 18/04/2008
Este artigo conta um pouco da história do software livre, resumindo desde sua criação até as suas expectativas para o futuro.

Estudando As Particularidades Da Ferramenta Microsoft Windows Sharepoint Services Como Soluções Corporativas
Por: Vanessa G. Moreira | 14/04/2008
Este trabalho é de grande importância para os alunos, professores e profissionais da área de informática que fazem bom uso da Tecnologia da Informação, pois os mesmos poderão entender como funcionam as particularidades da ferramenta Microsoft Windows Sharepoint Services dentro de uma organização. O mesmo está em evidência, se expandindo a cada dia nas mais variadas empresas. Portanto, quem pretende utilizar esta ferramenta deverá conhecer bem sobre este sistema.

Windows 2008 - Server Core
Por: Leonardo Moraes | 21/03/2008
Nova opção de instalação do Windows Server que visa gerar economia, redução de TCO e aumento de segurança.

Qual O Melhor Sistema Operacional?
Por: Ruben Zevallos Jr. | 08/03/2008
Qual o melhor sapato? Qual a melhor roupa? Qual o melhor carro?

Conspiração Cibernética
Por: Mathias Gonzalez | 03/03/2008
Seu micro já travou hoje? Não estressa não! Isso acontecerá com todos nós pobres mortais que confiamos nestas "drogas" de máquinas que parecem ter sido programadas para nos tirar o sossego ou no mínimo nos viciar nelas.

A organização eficiente do e-mail
Por: Armando Terribili Filho | 15/02/2008
O objetivo deste artigo é apresentar algumas facilidades para você na gestão de sua caixa postal. Coisa simples, porém, útil.

Dificuldades na exportação de software: de quem é a culpa?
Por: Armando Terribili Filho | 15/02/2008
O artigo mostra que as dificuldades de exportação de software transcendem as políticas de incentivo fiscal do governo brasileiro, tendo como co-responsáveis os empresários que não investem em qualificação e certificação de seus profissionais. No mercado internacional, as certificações (de empresas e de profissionais) são valorizadas e funcionam como um "cartão de visitas" para credenciamento das empresas para exportar software.

Exemplo de otimização de armazenamento de dados
Por: Caio Azevedo | 14/02/2008
Esse artigo tem como objetivo propor a solução de um problema no qual deparamos com razoável freqüência, e se você ainda não o teve pela frente, provavelmente ainda o terá especialmente se você desenvolve aplicações comerciais.

Categorias do Artigo





Webmasters

Leitor de RSS
RSS
Links

Business Info

Anunciar