SQL| JOIN(Inner, Left, Right and Full Joins)
i den här artikeln kommer vi att diskutera om de återstående två anslutningarna:

  • CARTESIAN JOIN
  • SELF JOIN

överväga de två tabellerna nedan:

Studentcourse

    1. Cartesian join: cartesian join är också känd som cross join. I en kartesisk koppling finns en koppling för varje rad i ett bord till varje rad i ett annat bord., Detta händer vanligtvis när matchande kolumn eller där villkoret inte anges.
      • i avsaknad av en där tillstånd CARTESIAN JOIN kommer att bete sig som en kartesisk produkt . dvs. antalet rader i resultatuppsättningen är produkten av antalet rader i de två tabellerna.
      • i närvaro av var villkoret denna koppling kommer att fungera som en inre koppling.,
      • generellt sett liknar Cross join en inre koppling där join-condition alltid kommer att utvärdera till True

      Syntax:

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

exempelfrågor(CARTESIAN JOIN):

  • i nedanstående fråga väljer vi namn och ålder från Studentbordet och COURSE_ID från Studentkurstabellen. I utmatningen kan du se att varje rad i tabellstudenten förenas med varje rad i Tabellstudentenkurs. De totala raderna i resultatet-set = 4 * 4 = 16.,
    SELECT Student.NAME, Student.AGE, StudentCourse.COURSE_IDFROM StudentCROSS JOIN StudentCourse;

    Output:

  1. SELF JOIN: som namnet betyder, i SELF JOIN en tabell förenas med sig själv. Det vill säga, varje rad i tabellen förenas med sig själv och alla andra rader beroende på vissa förhållanden. Med andra ord kan vi säga att det är en koppling mellan två kopior av samma tabell.,Syntax:
    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.

    exempelfrågor(self JOIN):

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

    utgång:

den här artikeln harsh Agarwal bidragit med. Om du gillar GeeksforGeeks och vill bidra, kan du också skriva en artikel med contribute.geeksforgeeks.org eller maila din artikel till [email protected]. se din artikel som visas på GeeksforGeeks huvudsida och hjälpa andra nördar.