Oi e aí pessoal tudo bem dando continuidade aqui o nosso curso linguagem SQL nesse novo módulo nós vamos falar sobre Jon Jones ou simplesmente junções então o que que é um joinha é uma junção entre uma tabela com ela mesmo ou uma tabela com uma outra tabela ou uma tabela com diversas tabelas e para que serve essa junções justamente para quando eu fazer essa relação entre essas tabelas eu poder Obter dados que estão em uma outra tabela afinal de contas o nosso banco de dados é relacional nós estamos falando aqui sobre banco de dados relacionais
basicamente existem quatro tipos de John O primeiro é o Inner join vejo que eu tenho que a tabela 1 EA tabela 2 então o Inner join ele faz o que a intercessão dos elementos que estão na tabela 1 e que estão na tabela 2 é Obrigatoriamente os elementos da fazer parte desses dois conjuntos a tabela 1 EA tabela 2 O que é que o leste John faz olha só nessa relação aqui tabela 1 tabela 2 do lado esquerdo da relação que é que eu tenho eu tenho a tabela 1 e do lado direito a relação
eu tenho quem a tabela 2 Então o que é que o lecce John faz ele faz uma consulta de idade e vai retornar o que os dados que estão na tabela 1 mas que não necessariamente estão na tabela 2 podem até estar mas não necessariamente tem que estar enquanto o herói ele faz uma relação ele faz uma consulta trazendo dados que estão tanto na tabela 1 quanto na tabela 2 afinal de contas é uma interseção o leite joia O que é que ele faz eu tenho aqui do lado esquerdo da relação a tabela 1 e
do lado direito a relação eu tenho uma tabela 2 São polícia que a junção do lado direito ou seja ele vai me trazer todos os dados que estão na tabela do e do lado direito da relação mas que não necessariamente esteja na tabela 1 que é o lado esquerdo da relação beleza O que é que o falta Johnny faz ele faz uma junção de todos os elementos que estão na tabela 1 e na tabela 2 é como se fosse uma união de conjuntos se nós recorremos a teoria de conjuntos que nós estamos lá muito tempo
atrás Beleza então vamos fazer o seguinte vamos ver a sintaxe desse primeiro tipo de relacionamento chamado energyone o nós temos aí né Vamos imaginar duas tabelas a tabela 1 EA tabela 2 certo então eu faço um select the Quais são os campos eu quero retornar from o nome da primeira tabela que eu quero pegar o dado né fazendo uma junção interna com quem vocês vão emprestar são né com a tabela 21 o nome da tabela um ponto o nome da coluna que eu quero relacionar com a tabela 2.1 o nome da coluna que está na
tabela 2 o momento que a gente se relaciona chave primária com chave estrangeira O que é uma chave estrangeira gente é uma chave primária que sai de uma tabela e vai para outra tabela como sendo chave estrangeira beleza Ah mas tá muito teórico eu também concordo com você vamos fazer o seguinte vamos lá para o xampp Vamos abrir aquele nosso banco idade e lá a gente vai fazer um exemplo que você vai entender como é que funciona essa relação Beleza então vamos nessa nunca é demais lembrar aqui para gente ter pega a pena de mim
funcionando nós precisamos estar com o serviço mais Kelly rodando e também com serviço Apache rodando Beleza então vamos fazer o seguinte eu tenho aqui a tabela a requisição EA tabela settle observe a tabela a requisição ela tem como chave primária o código do setor desculpe como chave estrangeira o código do setor e o código usuário a chave tem mais atrapalha a requisição é quem é CEO requisição certo então e a consulta que eu desejo retornar aqui eu preciso que essa consulta ela me retorne o código da requisição a data da requisição e o nome do
usuário que fez aquela requisição veja que na tabela repetição e tem o código do usuário eu não tenho o nome do usuário como é que eu escrevo essa consulta vamos lá de select o from Então eu quero que ele me traga aí Alguns Campos eu vou deixar esse campo aqui para depois certo então Quais são as tabelas que eu vou precisar Obter dados a tabela tb requisição certo eu vou apelidá-la de R requisição certo e Nós também vamos precisar Obter dados da tabela tb setor que eu falei as disco tb usuário né tem meu usuário
só reduzir aqui é o TB usuário tac certo então vai ser tb usuário vamos lá TV usuário eu vou apelidá-lo de um eu sei que eu tenho que pegar o código da requisição é seu requisição eu vou ter que pegar a data da requisição e eu também vou ter que pegar o que o nome do usuário que tá aqui na tabela usual para isso a gente tem que fazer e são entre duas tabelas a tabela requisição EA tabela usuário então que tipo de junção eu vou utilizar aqui vou utilizar o Inner join por quê Porque
eu quero pegar todas as requisições que existem o nome do usuário associado eu garanto que nessa consulta eu vou terminar Joy porque sempre na tabela a requisição vai ter um seu usuário e lá na tabela tb usuário também vai ter sempre um céu usuário afinal de contas e na tabela a requisição tivesse o usuário que não existe isso na tabela usuário eu teria infringido aquela regra de integridade referencial Tá certo então vamos lá olha só como é que eu escrevo isso eu tenho aqui a tabela requisição que eu apelidei Dr e a tabela usuário que
eu apelidei de U essas tabelas tem o que tem uma junção interna entre elas certo mas como é que vai ser aplicada essa relação essa relação vai ser feita sobre e lá na tabela usuário existe um campo chamados e o usuário e na tabela R existe um campo chamados e o usuário hora o que foi que nós vimos quando nós falamos sobre chave primária e e sobre chave estrangeira a relação entre a chave primária e a chave estrangeira permite que duas tabelas se relacionem e eu consigo Obter dados que estão em uma outra tabela Então
essa junção interna que esse meu Joy vai permitir que a tabela requisição EA tabela usuário ela é se integrem ela é se relacione por meio do campo se o usuário Ah mas você colocasse aqui por exemplo se a requisição se ferrou sua consulta requisição por quê Porque muitas vezes o seu usuário não vai bater com o código e requisição e a relação que existe entre as duas tabelas Não é por meio do campo se o usuário e se a requisição mas sim por meio do câmpus e o usuário isso nós descemos quando nós construímos nossos
Marco dados físico e descemos Quem era a chave primária e quem era a chave estrangeira vamos rodar essa consulta aqui para gente ver o resultado bom então era só eu tenho aqui um copo da requisição a data que a requisição foi feita e o nome do usuário veja que eu não estou pegando mais o código do usuário estou pegando o nome do usuário certo ah mas eu poderia de repente fazer uma ordenação aqui de dados eu vou ordenar aqui por quem ordenar pelo nome do usuário 1 roda aqui para ver se fica melhor para a
gente enxergar então primeiro vem Pascal e depois vem Turim há mais vamos fazer o seguinte eu quero pegar apenas as requisições que foram feitas por Pascal como é que eu poderia fazer isso Além de eu fazer se esse filtro na relação né juntando o teu usuário com a TV o tabela TV requisição e poderia fazer o seguinte eu roer né ou seja onde o nome do usuário seja igual a quem Pascal hoje só vai me retornar as requisições que foram feitas pelo a casca vamos ver olha só pegou apenas as requisições de Pascal beleza vamos
fazer o seguinte vamos fazer uma pequena modificação nessa consulta além de ele trazer para mim o nome do usuário que fez aquela requisição eu gostaria de fazer também o seguinte eu queria que ele me me trouxesse um código do setor no qual é aquela requisição foi foi deste vai ser destinada né qual para onde aquele aquela requisição vai então eu vou fazer o seguinte eu falei para vocês que um Joy ele pode ser feito com uma uma tabela com ela mesmo uma tabela com a segunda tabela ou uma tabela com ele e tabelas 13 com
4 com cinco com o universo está aberto certo então essa junção aqui ó eu fiz entre duas tabelas tabela requisição na tabela até de usuários eu vou colocar uma nova tabela nesse circuito aqui porque eu quero trazer o nome do setor para onde aquela requisição a ser destinada foi foi originada melhor dizendo tá então vou fazer uma nova função a nova junção interna com quem com a tabela é B setor que eu vou apelidar a simplesmente de S e olha a sopa é ser né essa relação vai ser sobre quais Campos Olha só na tabela
requisição que a tabela R nós sabemos que existe Qual campo o campus eo setor tá aqui não eu vou marcar aqui se o setor tem que ser igual a quem lá na tabela acertou existe um campo chamado Social Setor Então vai ser s.co setor ou seja Relacione a tabela requisição com a tabela setor por meio do campo seus e tu não quer que nós estamos dizendo aqui para o meu sgbd selecione esses campos além desse daqui eu vou ter que retornar agora também né gente o nome União setor que eu vou apelidado de setor certo
Esses são os campos a partir da tabela requisição que vai fazer uma junção interna com a tabela ter Deus tô batendo o campo seu usuário da tabela usuário com o campo se o usuário trabalho a requisição fazendo uma nova junção data com a tabela setor que eu vou chamar ela de S batendo os campos céu setor que tá na tabela R que corresponde a quem a requisição deve ser uma briga pagamento igual a quem ao campo se o setor que está na tabela S que representa a tabela bebê setor onde o nome do usuário seja
Pascal e aqui ordene pelo nome do usuário certo vamos ver e olha aí gente nós temos que as aquisições foram feitas por Pascal um os setores destino daquela requisição né vão ser recursos humanos e t i eu vou só aumentar esse filtro aqui vai aparecer mais dados Tá eu vou fazer o seguinte eu vou tirar esse essa filtragem por fácil tá vou deixar todos os setores tá olha só usuário só executar novamente então eu tenho aí as requisições que foram feitas por Pascal e e por turi bem como para onde aquela requisição vai ser destinada
beleza gente eu espero que esse assunto tenha ficado claro para você se não ficou Claro deixe seu comentário aí e assim que puder eu vi eu vou com certeza responder o seu questionamento muito obrigado por sua companhia e puxou a parceria e não deixa de se inscrever no canal para que toda vez que nós postamos o novo vídeo você ficar sabendo e também para que nosso canal consiga ampliar-se cada vez mais é importante que você deixa os e nesse vídeo Muito obrigado e eu espero revê-lo no próximo