813 Shares 6703 views

MySQL JOIN: descrição, um exemplo do uso de comando e recomendações

Desenvolvimento de uma base de dados de recursos da Internet não difere de bancos de dados padrão desenvolvidos no sistema de MS SQL SERVER. Normalmente, para este tipo de recurso usar minha linguagem SQL, embora ele pode ser aplicado para o desenvolvimento de produtos de software padrão para uso local. Mas a questão no artigo não ir sobre ele.

Muitas vezes quando se trabalha com bases de dados em cada uma das línguas da tarefa de fazer os dados de exemplo para derivar em uma variedade de relatórios, gráficos e assim por diante. Como regra geral, a implementação deste tipo de problemas temos que usar não uma, mas várias mesas, combinando-os em uma única solicitação, o que complica muito a sua estrutura. É necessário ter em conta, como deveriam ser dados de saída como irá "apanhar" mesa, e que o resultado será o mais aceitável para o programador. Para resolver estes problemas, utilize um dos a linguagem de design MySQL padrão – Unir.

O conceito das palavras Junte

desenvolvimento de banco de dados idiomas, não importa que tipo de linguagem, tomando como base as palavras padrão de dicionários de inglês (que é por isso que a condição de que você sabe Inglês, você bude muito mais fácil trabalhar com tabelas). Para implementar a tabela de conexões na amostra colhida a mesma palavra – Unir. Na linguagem do software de banco de dados utilizado My SQL. Tradução da palavra serviço é exatamente o mesmo que na língua – "união".

Interpretação estrutura MySQL – Junte-se a, qualquer um dos quais será exatamente o mesmo. Se você decifrar o propósito de construção, ou seja, o esboço de seu trabalho, temos os seguintes valores: o projeto permitirá a recolher os campos obrigatórios de diferentes tabelas ou consultas aninhadas em uma única amostra.

Tipos de projetos para mesclar

Se o programador precisa coletar uma amostra de várias tabelas, e ele sabe o que os campos-chave no-los e que tipo de dados são necessários para o relatório, você pode usar uma das estruturas básicas da associação, a fim de alcançar o resultado desejado. estruturas básicas (para unir tabelas) são quatro:

  1. INNER JOIN.
  2. CROSS JOIN.
  3. LEFT JOIN.
  4. RIGHT JOIN.

Dependendo da tarefa, cada um dos projetos padrão dará resultados diferentes, que receberão relatórios sobre diferentes parâmetros em um curto período de tempo.

Criar e preencher tabelas para uso posterior

Antes de começar, por exemplo, considerar mecanismos para trabalhar com construções de fusão de dados deve preparar várias mesas, com o qual vamos continuar a trabalhar. Isso vai ajudar a demonstrar os princípios de todos os operadores, além disso, para que os novatos vão aprender todos os fundamentos tabelas de programação mais fácil.

A primeira tabela irá descrever alguns dos itens com os quais as pessoas estão constantemente encontradas ao longo de sua vida.

A segunda tabela irá descrever algumas das propriedades de objetos a partir da primeira tabela para permitir a continuação dos trabalhos com eles.

Em geral, as duas tabelas será suficiente para mostrar o exemplo de seu trabalho. Agora você pode avançar para a consideração prática de nossos projetos.

Usando Inner Join

Se você estiver usando estrutura MySQL – Junte iNEER vale a pena considerar algumas de suas características. Este projeto permite que você escolha de ambas as tabelas somente os registros que estão na primeira e na segunda tabela. Como isso funciona? A primeira tabela temos a chave mestra – ID, que indica o número de série de registros na tabela.

Ao criar a segunda tabela, a mesma chave é utilizada como um número de sequência, um exemplo pode ser visto nas figuras. Ao escolher um dados instrução Select irá determinar o resultado só registra os números de série coincidem – portanto, eles estão na primeira e na segunda tabela.

Quando a construção é necessário entender exatamente o que você precisa para obter os dados. O erro mais comum, especialmente para desenvolvedores de banco de dados, é o uso irracional e indevido de projeto Inner Join. Como exemplo, MySQL associação interior, você pode considerar um script que nos levará de volta ao descrito anteriormente e cheio de tabelas de objetos de informação e suas propriedades. Mas pode haver várias maneiras de usar design. A este respeito My SQL é a linguagem muito flexível. Assim, você pode ver exemplos de como usar MySQL Inner Join.

Associação de tabelas sem especificar quaisquer parâmetros. Neste caso, obtemos o resultado de um plano tão:

Se indicar pela solução da palavra: Usando um serviço, é necessário considerar as principais chaves de registros nas tabelas, o resultado vai mudar drasticamente. Neste caso, temos a amostra, que retornará apenas as linhas que têm as mesmas chaves mestras.

Possibilidade de uma terceira concretização do uso, quando solicitado pela palavra «em» indica campos que devem ocorrer tabelas de união. Neste caso, a amostra irá retornar as seguintes informações:

Características Use Left Join

Se considerarmos uma outra maneira de combinar tabelas usando estrutura MySQL – Junte, pode-se notar uma diferença nos dados, que são emitidas. Tal mecanismo é Esquerda design.

Usando a estrutura LEFT JOIN MySQL tem algumas características e, como Inner, requer uma compreensão clara dos resultados a serem obtidos.

Neste caso, selecciona primeiro todos os registos da primeira mesa, e ainda ao mesmo estão ligados para as segundas propriedades da tabela. Neste caso, se houver um registro, por exemplo, o "banco" na primeira tabela e a segunda tabela há propriedades a ele, o exibe operador à esquerda em frente a entrada para nulo, o que diz o programador que os sinais sobre este assunto não é ouvido .

Usando este projeto ajudará a determinar quais campos ou, por exemplo, os bens na loja não está definido o preço, o período de garantia , e assim por diante.

Exemplo de Utilização Esquerda

Para ser considerado para a concepção da prática operador LEFT JOIN MySQL use a tabela anteriormente descrito. Por exemplo, você precisa selecionar a lista inteira de produtos que estão na loja, e verificar se há algum deles não suportar características ou propriedades. Neste caso, a amostra irá exibir todos os produtos, e para aqueles que não têm nenhuma propriedade, arcará com valores nulos.

Em caso de utilização na construção Junte

Como parâmetro, a associação pode incluir não só indicar os campos para os quais você deve fazer uma tabela de conexão, mas podem incluir o operador Quando as condições.

Por exemplo, considere um script que deve ser devolvido para nós somente os registros que não colocar um sinal. Neste caso, você precisa adicionar o design Junte termos do operador e indicam que ele deve ser retornado como um resultado.

Quando usado em MySQL Junte – Onde deve ser claramente entendido que exibe somente os registros que incluem a condição acima, ea amostra será, então, a seguinte:

Estes pedidos permitem que você faça dados específicos de amostra relativos à condição programador selecionado. Tais condições podem indicar vários possíveis ao atualizar os parâmetros de seleção de dados unidos com mesas.

Usando Registra-se para alterar os dados nas tabelas

Design Junte-se, de fato, universal. Ele permite que você não só fazer uma variedade de amostras, mas também conectar-se aos pedidos de uma a várias tabelas, para impor condições adicionais em uma amostra. O projeto pode igualmente ser usado para outras operações de dados. Assim, Junte podem ser usados para alterar os dados na tabela. Ou melhor, para esclarecer as condições na tabela, ou nos casos em que a necessidade de atualizar dados em várias tabelas nas mesmas condições.

Por exemplo, considere o seguinte problema. Dada três tabelas nas quais há alguma evidência. É necessário realizar a mudança de dados em ambas as tabelas usando uma única consulta. Apenas para resolver tais tarefas podem ser usados na atualização de comando Design Junte-se. Junte-se à muito tipo de estrutura depende, da mesma forma como no caso dos dados da amostra sobre o resultado que deseja obter um programador.

Considere um exemplo simples. Você precisa atualizar os dados em um único pedido às mesmas condições. Este tipo de consulta é construída para otimizar o banco de dados. Por que escrever consultas diferentes para cada uma das tabelas, se você pode gastar todo o manipulação de dados pedido um? EXEMPLO MySQL Atualização Junte no nosso caso seria:

Construir consultas complexas

Muitas vezes quando se trabalha com banco de dados de consulta necessário para construir não só uma união de várias mesas, mas também com o uso de sub-consultas. Tais problemas são muito difíceis de entender para os bancos de dados programador iniciante. A dificuldade é que nós temos que pensar em cada passo, determinar quais dados de uma tabela ou consulta precisa obter e como no futuro eles devem estar indo para o trabalho.

Para uma compreensão mais específica pode ser considerado (em MySQL JOIN) exemplos de consultas complexas. Se você é novo e está apenas começando a trabalhar com bancos de dados, essa formação só irá beneficiar. A personificação ideal vai MySQL Left Join exemplos.

Esta consulta irá voltar-nos para 58 registros do contrato de venda, que está cheio ou há um saldo de caixa para a data selecionada. Neste caso, a data atual. Também na amostra adicionada para a condição de que o contrato devem ser os caracteres título – "123". As informações na tela (de dados) serão classificados – classificada pelo número do contrato.

O exemplo a seguir exibe os detalhes de todos os pagamentos, o que irá indicar o número do contrato.

usando subconsultas

Como mencionado anteriormente, quando se trabalha com bancos de dados podem ser combinados não apenas a tabela, mas a tabela com o pedido. Este projeto é usado principalmente para acelerar a consulta e sua otimização.

Por exemplo, se você quiser a partir da tabela, que tem centenas de campos e, digamos, mil registros, escolha apenas dois campos, é necessário usar uma consulta que retorna apenas os campos obrigatórios, e combiná-lo com a amostra de dados principal. Como exemplo MySQL Junte Select pode considerar um pedido deste tipo:

Não é todos os métodos de utilização do MySQL projetos padrão, e só padrão. Como usar o projeto e junte-se em qualquer de suas formas, o programador decide, mas vale a pena lembrar e ter em conta que o resultado deve ser obtido pela consulta.