..
Quem sabe o que o conhecimento de SQL é o JOIN. Em nossos guias e outros artigos que explicou como o JOIN e como você pode criar relações entre tabelas diferentes em um banco de dados.
O requisito mais comum é satisfeito pelo instrumento JOIN para encontrar correspondências entre duas tabelas, caso em que auxilia a cláusula INNER JOIN que localiza com precisão e retorna os campos que satisfazem a correspondência procurada dentro de duas ou mais tabelas envolvidas na JOIN.
Muito menos intuitivo é a necessidade de identificar os campos que de outra forma não tem um fósforo dentro do JOIN.
Vamos dar um exemplo.
Suponha que você tem que gerenciar um banco de dados de um e-commerce é composto de apenas duas tabelas:
Para satisfazer o primeiro requisito, é claro, é bastante simples:
SELECIONE CUSTOMER.FIRST, CUSTOMER.LAST FROM clientes INNER ordens de junção ON = clienti.id ordini.id_cliente ORDER BY ASC CUSTOMER.LASTe até agora nenhum problema.
Mas como podemos fazer para reverter o resultado?
Bem ...
Primeiro, não use um LEFT JOIN, INNER JOIN, mas a fim de encontrar um jogo não está completo, mas parcial, onde, no entanto, os resultados da tabela da esquerda são retornados de qualquer maneira.
Sem isso, vamos procurar (utilizando a cláusula WHERE) registra falta (ou seja, não encontrados no relatório) e depois identificado como NULL (em SQL NULL é definido como uma espécie de "valor especial", que identifica a ausência de valor ..)
Vamos ver o código:
SELECIONE CUSTOMER.FIRST, CUSTOMER.LAST FROM clientes LEFT JOIN Orders ON = clienti.id ordini.id_cliente ONDE ESTÁ NULL ordini.id_cliente ORDER BY ASC CUSTOMER.LASTO resultado é, de fato, a lista de nomes de clientes que nunca compraram nada.
| |
MS Access (Curso)
Saiba como criar e gerenciar bancos de dados com facilidade e rapidez. A partir de 29 €. |
| |
MySQL (Curso)
Gestão de banco de dados open-source. A partir de 39 €. |
| |
SQL e Banco de Dados (Curso)
Criar e gerenciar bancos de dados relacionais. A partir de 39 €. |