Heim  >  Artikel  >  Datenbank  >  Was ist der Unterschied zwischen Left-Join, Right-Join, Inner-Join und Full-Outer-Join?

Was ist der Unterschied zwischen Left-Join, Right-Join, Inner-Join und Full-Outer-Join?

青灯夜游
青灯夜游Original
2020-07-16 11:31:4964623Durchsuche

Unterschied: Left-Join gibt alle Datensätze in der linken Tabelle und Datensätze mit gleichen Join-Feldern in der rechten Tabelle zurück; rechter Join gibt alle Datensätze in der rechten Tabelle und Datensätze mit gleichen Join-Feldern in der linken inneren Tabelle zurück; Geben Sie nur Zeilen mit gleichen Join-Feldern in den beiden Tabellen zurück; vollständige äußere Joins geben alle Datensätze in der linken und rechten Tabelle sowie Datensätze mit gleichen Join-Feldern in der linken und rechten Tabelle zurück.

Was ist der Unterschied zwischen Left-Join, Right-Join, Inner-Join und Full-Outer-Join?

Linker Join (Linker Join, linker äußerer Join): Gibt alle Datensätze in der linken Tabelle und Datensätze mit gleichen Join-Feldern in der rechten Tabelle zurück.

Rechter Join (rechter Join, rechter äußerer Join): Gibt alle Datensätze in der rechten Tabelle zurück, die den Join-Feldern in der linken Tabelle entsprechen.

innerer Join (gleicher Join oder innerer Join): Gibt nur Zeilen mit gleichen Join-Feldern in den beiden Tabellen zurück.

vollständiger Join (vollständiger äußerer Join): Gibt alle Datensätze in der linken und rechten Tabelle zurück, die den Join-Feldern in der linken und rechten Tabelle entsprechen.

Zum Beispiel:

Tabelle A

ID-Name

3. Xiao Liu >

Inner Join: (Nur übereinstimmende Zeilen aus 2 Tabellen können angezeigt werden)

select a.name,b.job from A a  inner join B b on a.id=b.A_id

kann nur einen Datensatz erhalten:

小李  老师

Left-Join: (left Die Tabelle hat keine Einschränkungen)

select a.name,b.job from A a  left join B b on a.id=b.A_id

Drei Datensätze:

  小王  null
 
  小李  老师
 
  小刘  null

Rechter Join: (Die Tabelle rechts unterliegt keinen Einschränkungen)

select a.name,b.job from A a  right join B b on a.id=b.A_id

Zwei Datensätze:

  小李  老师
 
  null  程序员

Vollständig Outer Join: (keine Einschränkungen für die linke und rechte Tabelle)

select a.name,b.job from A a  full join B b on a.id=b.A_id

Vier Datenelemente

  小王  null
 
  小李  老师
 
  小刘  null
 
  null  程序员

Hinweis: In SQL umfassen Outer Joins den Left Join und Right Join, Full Outer Join und Equal Join (Inner Join), auch Inner Join genannt.

Verwandte Empfehlungen: „

SQL-Tutorial

Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen Left-Join, Right-Join, Inner-Join und Full-Outer-Join?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn