Razlika između pridruživanja lijeve i vanjske pridruživanja

Pridružite se lijevoj strani i pridružite se lijevoj strani

U SQL-u se pridruživanja koriste za kombinaciju zapisa koji potječu iz različitih skupova podataka. Spoj može biti ili unutarnji ili vanjski spoj. Unutarnji spoj vraća zapise koji se podudaraju u obje tablice, za razliku od vanjskog spajanja koje je suprotno unutrašnjem. Vanjsko spajanje stoga vraća one zapise koji nemaju podudaranja nijedne tablice. Razlike između desnog vanjskog spoja i lijevog vanjskog spoja su spomenute u nastavku.

Razlike

Kao što je ranije napomenuto, unutarnje spajanje će proizvesti samo skup zapisa koji se nalaze u dvije tablice koje se uspoređuju. S druge strane, puni vanjski spoj je onaj koji stvara potpuni skup svih zapisa koji se nalaze u obje usporedne tablice. U slučaju da nema podudarnosti, nedostajuće utakmice sadrže nulu.

Lijevi vanjski spoj sadrži čitav niz zapisa koji potječu iz prve tablice, a rezultati podudarnosti bit će dostupni s njihovim rezultatima u odgovarajućoj tablici. U slučaju da nema rezultata koji odgovaraju, desna strana sadrži nulu. Za proizvodnju zapisa samo u lijevoj tablici, a ne u desnoj tablici, upotrebljava se rečenica 'gdje'.

Za izradu jedinstvenih zapisa za tablicu s desne i one s lijeve strane, preporučuje se uporaba punog vanjskog spajanja. Nakon punog vanjskog spajanja, klauzula "gdje" koristi se za isključenje neželjenih rezultata i s "desne" i "s lijeve" strane. Nadalje, kartezijansko spajanje može se koristiti kako bi se pomoglo da se spoji sve što je lijevo i desno. To ponekad nije ono što se traži, ali je to što se ponekad pojavi. Spajanja proizvode snažan skup podataka koji daje do 16 reda podataka, često puno više nego što se predviđa. Iako dobivate ogromnu količinu podataka, pridruživanje je izrazito opasno jer mala nespojivost može osakatiti cijeli sustav.

Ako se bavite projektom koji također traži kompatibilnost Microsoftovog SQL poslužitelja, tada će biti prednosti koje proizlaze iz upotrebe lijeve vanjske veze. Povratak započinje započinje s vraćanjem unutarnjih zapisa, zatim zapisima pridruživanja desne strane i na kraju spajanjem lijevih zapisa. Upotreba lijeve pridružene ili lijeve vanjske izjave pridruživanja u SQL okruženju odnosit će se točno istom izjavom. To u suštini znači da nema razlike u očekivanom rezultatu koristi li se lijevi spoj ili se koristi lijevi vanjski spoj. Rezultat će biti sličan, osim ako se okruženje ne nalazi u Microsoft SQL poslužitelju. Vanjska se ključna riječ može koristiti ili čak izostaviti, jer se rezultati ni na koji način ne razlikuju.

Sažetak

Spajanja se koriste u SQL-u za usporedbu različitih skupova podataka

Unutarnje spajanje proizvodi samo niz zapisa koji su prisutni u dvije tablice koje se uspoređuju

Vanjskim spajanjem nastaje čitav niz svih zapisa koji su prisutni u obje ispitivane tablice

Klauzula 'gdje' se koristi za izradu jedinstvenih zapisa nakon korištenja punog pridruživanja

Kartezijanska spojna veza povezuje i lijeve i desne elemente tablice.

Postoji značajna razlika gdje se lijevo pridruživanje i lijevo vanjsko pridruživanje koriste kada koristite Microsoft SQL poslužitelj

Sve u svemu, uporaba lijeve pridružene ili lijeve vanjske izjave pridruživanja odnosi se na potpuno istu izjavu. Kako nema razlike, preporučuje se uporaba lijeve vanjske spojnice.