sql >> Database teknologi >  >> RDS >> Sqlserver

CROSS JOIN vs INNER JOIN i SQL

Her er det bedste eksempel på Cross Join og Inner Join.

Overvej følgende tabeller

TABEL :Teacher

x------------------------x | TchrId | TeacherName | x----------|-------------x | T1 | Mary | | T2 | Jim | x------------------------x

TABEL :Student

x--------------------------------------x | StudId | TchrId | StudentName | x----------|-------------|-------------x | S1 | T1 | Vineeth | | S2 | T1 | Unni | x--------------------------------------x

1. INDRE JOIN

Indre sammenføjning vælger de rækker, der opfylder både tabellen .

Overvej, at vi skal finde de lærere, der er klasselærere, og deres tilsvarende elever. I den tilstand skal vi anvende JOIN eller INNER JOIN og vil

Forespørgsel

SELECT T.TchrId,T.TeacherName,S.StudentName 
FROM #Teacher T
INNER JOIN #Student S ON T.TchrId = S.TchrId
 
  • SQL FIDDLE

Resultat

x--------------------------------------x | TchrId | TeacherName | StudentName | x----------|-------------|-------------x | T1 | Mary | Vineeth | | T1 | Mary | Unni | x--------------------------------------x

2. CROSS JOIN

Cross join vælger alle rækkerne fra den første tabel og alle rækkerne fra den anden tabel og viser som kartesisk produkt, dvs. med alle muligheder

Tænk på, at vi skal finde alle lærere i skolen og elever, uanset klasselærere, vi skal anvende CROSS JOIN .

Forespørgsel

SELECT T.TchrId,T.TeacherName,S.StudentName 
FROM #Teacher T
CROSS JOIN #Student S 
 
  • SQL FIDDLE

Resultat

x--------------------------------------x | TchrId | TeacherName | StudentName | x----------|-------------|-------------x | T2 | Jim | Vineeth | | T2 | Jim | Unni | | T1 | Mary | Vineeth | | T1 | Mary | Unni | x--------------------------------------x

  1. Sådan rettes Microsoft SQL Server Error 926? - Løst

  2. Sådan inkluderes en PHP-variabel i en MySQL-sætning

  3. Skadelige, gennemgående SQL Server-ydeevnemyter

  4. Sådan finder du den optimale unikke identifikator i en tabel i SQL Server:sp_special_columns