SQL| JOIN(Inner, Left, Right e Full Associações)
neste artigo, vamos discutir sobre os dois restantes ASSOCIAÇÕES:

  • ASSOCIAÇÃO CARTESIANO
  • AUTO-ASSOCIAÇÃO

Considerar as duas tabelas abaixo:

StudentCourse

    1. CARTESIANO de ASSOCIAÇÃO: A ASSOCIAÇÃO CARTESIANO também é conhecido como CROSS JOIN. Em uma junção cartesiana há uma junção para cada linha de uma mesa para cada linha de outra mesa., Isto geralmente acontece quando a coluna correspondente ou onde a condição não é especificada.
      • In the absence of a WHERE condition the CARTESIAN JOIN will behave like a CARTESIAN PRODUCT . isto é, o número de linhas no conjunto de resultados é o produto do número de linhas das duas tabelas.
      • na presença de onde condição esta junção funcionará como uma junção interior.,
      • modo Geral, Cross join é semelhante a um inner join, onde a associação da condição será sempre avaliada como True

      Sintaxe:

      SELECT table1.column1 , table1.column2, table2.column1...FROM table1CROSS JOIN table2;table1: First table.table2: Second table

Exemplo de Consultas(ASSOCIAÇÃO CARTESIANO):

  • Na caixa abaixo consulta, vamos selecionar o NOME e a Idade do Aluno tabela e COURSE_ID de StudentCourse tabela. Na saída você pode ver que cada linha do estudante da mesa é junta com cada linha do StudentCourse da mesa. The total rows in the result-set = 4 * 4 = 16.,
    SELECT Student.NAME, Student.AGE, StudentCourse.COURSE_IDFROM StudentCROSS JOIN StudentCourse;

    Saída:

  1. AUTO-JOIN: Como o nome significa, em AUTO PARTICIPAR de uma tabela é juntou-se a si mesmo. Ou seja, cada linha da tabela é unida a si mesma e todas as outras linhas dependendo de algumas condições. Por outras palavras, podemos dizer que se trata de uma união entre duas cópias da mesma mesa.,Sintaxe:
    SELECT a.coulmn1 , b.column2FROM table_name a, table_name bWHERE some_condition;table_name: Name of the table.some_condition: Condition for selecting the rows.

    Exemplo de Consultas(SELF JOIN):

    SELECT a.ROLL_NO , b.NAMEFROM Student a, Student bWHERE a.ROLL_NO < b.ROLL_NO;

    Saída:

Este artigo é uma contribuição de Duras Agarwal. Se você gosta de GeeksforGeeks e gostaria de contribuir, você também pode escrever um artigo usando contribute.geeksforgeeks.org ou e-mail o seu artigo para [email protected]. Ver seu artigo publicado no GeeksforGeeks página principal e ajudar outros Geeks.