Junção completa no PostgreSQL

Junção completa no PostgreSQL
Os termos se juntar. A junção completa é a combinação de uma junção esquerda e junção direita. Ele exibe todos os registros que são correspondidos ou incomparáveis. No PostgreSQL, o termo de junção completo foi usado para buscar todos os registros sempre que os dados foram correspondidos a qualquer tabela, e.g., esquerda ou direita. Este artigo é útil para aqueles que não têm uma compreensão da junção completa. Para entender o conceito de junção completa, estaremos passando por alguns exemplos. Então, vamos abrir o seu PostgreSQL Pgadmin GUI da barra de tarefas do Windows 10.

Crie tabelas:

Para entender a junção completa, os usuários do PostGresql devem ter duas tabelas em seu sistema. Então, estaremos criando duas tabelas e inserindo registros neles. Abra o editor de consultas no banco de dados do Postgres de Pgadmin. Em primeiro lugar, criamos uma tabela chamada "wvegs" usando o comando Create Table no editor de consulta. Esta tabela representa os registros de vegetais produzidos no inverno. A tabela contém colunas wid e wname. A inserção na declaração foi usada para inserir os valores nas duas colunas da tabela "WVEGS". O ícone "Run" da barra de tarefas de pgadmin foi usado para processar as duas consultas de abastecer.

Crie a tabela wvegs (Wid int Primary Key, Wname Varchar (250) não NULL);
Inserir nos valores wvegs (wid, wname) (1, 'cebola'), (2, 'repolho'), (3, 'couve -flor'), (4, 'cenoura'), (5, 'brócolis');

A mensagem de sucesso na tela de saída mostra que os dados foram inseridos na tabela corretamente. Vamos buscar os registros de uma tabela "WVEGs" usando a opção "View/Edit Data" clicando com o botão direito do mouse na tabela. Adicionamos mais dois registros nesta tabela da visualização da grade diretamente. A consulta usada para buscar a tabela é dada da seguinte maneira:

Selecione * do público.Ordem WVEGS por Wid ASC;

Outra tabela, SVEGS, foi criada usando o comando Create Tabela para armazenar os registros para vegetais produzidos na temporada de verão. A inserção no comando é utilizada aqui para inserir registros nesta tabela. Ambas as tabelas foram criadas com sucesso, pois a saída mostra.

Crie tabela SVEGs (chave primária Sid int, Sname Varchar (250) não NULL);
Inserir nos valores svegs (sid, snome) (1, 'tomate'), (2, 'batata'), (3, 'pepino'), (4, 'hortelã'), (5, 'brinjal');

A tabela “SVEGs” com seu registro inserido pode ser buscada usando a opção “View/Edit Data” clicando com o botão direito do mouse na tabela “SVEGS”. O comando "select" também pode ser usado para fazê -lo, conforme ilustrado abaixo.

Selecione * do público.Ordem de Svegs por Sid ASC;

Exemplo 01: junção completa simples

Vamos começar com a implementação de uma junção completa em nosso primeiro exemplo. Usamos a consulta selecionada dentro do editor da PostgreSQL GUI para selecionar os registros da tabela "SVEGs" e "WVEGS". Temos buscado os registros da coluna da tabela nessa consulta enquanto aplicamos a condição de junção completa na tabela wvegs. Todos os registros de ambas as tabelas serão exibidos onde os IDs da Tabela “Svegs” e “WVEGs” são os mesmos, e.g., 1 a 5. Por outro. A saída da consulta de junção completa declarada foi demonstrada no snap.

Selecione SID, SNAME, WID, WNAME FROM SVEGS COMPLETO COMPRETO WVEGS ON SID = WID;

Se você deseja substituir a cláusula de palavra -chave de junção completa pela junção externa completa, você também pode fazer isso neste exemplo. Então, substituímos a junção completa à união externa completa em nossa consulta para ver os resultados. A consulta restante tem sido a mesma que declarou abaixo. Descobrimos que ambas as consultas funcionam da mesma forma, e a saída também é bastante semelhante. A saída também foi mostrada no snap.

Selecione SID, SNAME, WID, WNAME FROM SVEGS COMPLETO COMPLEIRO COMPLETO WVEGS ON SID = WID;

Exemplo 02: Tabela-aliases usando a junção completa

O exemplo acima mostrou como a junção completa simplesmente funciona perfeitamente para buscar os registros. Agora, examinaremos o uso completo de junção para fazer aliases no banco de dados PostGresql. A Tabela-Aliases é a técnica mais simples e poderosa usada no PostgreSQL e em outros bancos de dados para dar às tabelas a serem usadas na junção completa, alguns nomes mais simples para evitar inconvenientes após o uso de nomes de tabela difíceis. É a substituição do nome original da tabela. Enquanto a junção completa funciona da mesma forma que no exemplo acima. Então, usamos a mesma consulta usada no exemplo acima com uma pequena atualização. Atribuímos às tabelas alguns novos nomes como aliases, e.g., s e c. A consulta abaixo mostra a mesma saída.

Selecione% s.Sid, Snome, Wid, Wname da Junção completa de Svegs.Sid = w.Wid;

Exemplo 03: Uso de onde a cláusula

Usaremos a cláusula onde dentro da consulta, tendo uma junção completa aplicada a ela neste exemplo. A instrução mostra que a consulta deve buscar todos os registros de ambas as tabelas, exceto o registro de um nome de vegetal "pepino". A saída está mostrando todos os dados, mas perdendo os vegetais de ambas as tabelas com ID “3”. Devido a isso, a "couve -flor" vegetal da tabela WVEGS também foi ignorada devido ao seu ID "3".

Selecione Sid, Snome, Wid, Wname de Svegs Full Junção WVEGS no SID = wid WHERE SNAME != 'Pepino';

Exemplo 04:

Vamos atualizar a tabela "wvegs" um pouco. Adicionamos uma coluna extra, "sid", dentro dela. Adicionamos alguns registros em algumas linhas da coluna SID, e alguns foram deixados vazios propositalmente. A tabela foi salva tocando no ícone salvo da barra de tarefas.

Após esta atualização, aplicamos a junção externa completa na tabela SVEGS, em vez da tabela WVEGS, como fizemos nos exemplos acima. Temos buscado os registros em nome da coluna SID mencionada na tabela WVEGS e na tabela SVEGS enquanto usava aliases. A saída exibe todos os registros em que os IDs do SID de ambas as tabelas correspondem. Ele exibe nulo onde os IDs não são semelhantes dentro da coluna SID na tabela svegs e wvegs.

Selecione wid, wname, snome de wvegs w de junção externa completa.Sid = w.Sid;

Exemplo 05:

Vamos usar a cláusula onde a mesma consulta acima usada no exemplo. A junção externa completa foi aplicada aqui para buscar a linha de dados de ambas as tabelas onde a tabela WVEGS contém um valor nulo em sua coluna WNAME. A saída do valor subsequente da coluna de outra tabela, "SNAME", em contraste com a coluna NULL de WVEGs, a coluna "Wname" é "Cucumber".

Por outro lado, a saída dos valores subsequentes da coluna de outra tabela "wname", em contraste com a coluna NULL da coluna SVEGS "SNAME" é "Cenoura" e "Red Chilli".

Conclusão:

Este artigo contém exemplos completos de junção no PostgreSQL para reunir todos os dados em certas condições foram satisfeitos. A cláusula de junção completa pode atingir sua meta enquanto usada no comando select. O conceito de junção completo fica mais fácil após o uso de aliases da tabela e onde as cláusulas. O uso de clausas mencionadas completas facilita o entendimento e a implementação do nosso artigo para usuários do PostgreSQL.