Differenza tra Join sinistro e Join esterno sinistro Differenza tra

Anonim

Left Join vs Left Outer Join

In SQL, i join vengono utilizzati per la combinazione di record provenienti da insiemi di dati diversi. Il join può essere un inner join o un outer join. Un join interno restituisce record che hanno corrispondenze in entrambe le tabelle anziché un join esterno che è l'opposto di quello interno. L'outer join pertanto restituisce quei record che non hanno corrispondenze in nessuna tabella. Le differenze tra l'unione esterna destra e la giuntura esterna sinistra sono discusse di seguito.

Differenze

Come notato in precedenza, un join interno produrrà solo un set di record che è presente in due tabelle confrontate. Un join esterno completo, d'altra parte, è uno che produce il set completo di tutti i record presenti in entrambe le tabelle in confronto. Nel caso in cui non ci siano fiammiferi, le partite mancanti conterranno un nulla.

Un join esterno sinistro conterrà un set completo di record provenienti dalla prima tabella e i risultati corrispondenti saranno disponibili con i relativi risultati nella tabella corrispondente. Nel caso in cui non vi siano risultati corrispondenti, il lato destro conterrà un valore null. Per produrre solo i record nella tabella di sinistra, e non la tabella di destra, entra in gioco l'uso di una clausola 'where'.

Per produrre record univoci per la tabella a destra e quella a sinistra, si consiglia l'uso di un join esterno completo. Dopo aver eseguito il join esterno completo, viene utilizzata una clausola "where" per escludere risultati indesiderati dal lato "right" e "left". Inoltre, un join cartesiano può essere utilizzato per unire tutto a sinistra e a destra. Questo a volte non può essere ciò che si cerca, ma è ciò che a volte appare. I join producono un potente set di dati che fornisce fino a 16 righe di set di dati, spesso molto più di quanto previsto. Sebbene si ottenga una grande quantità di set di dati, questi join sono estremamente pericolosi in quanto una leggera incompatibilità può paralizzare l'intero sistema.

Se si ha a che fare con un progetto che cerca anche la compatibilità del server Microsoft SQL, allora ci saranno benefici derivati ​​dall'uso del join esterno sinistro. La sequenza di ritorno inizia con i record interni che vengono restituiti per primi, seguiti dai record di join giusti e infine da un join dei record di sinistra. L'uso dell'istruzione left join o left outer nell'ambiente SQL farà riferimento alla stessa affermazione. Questo in sostanza significa che non vi è alcuna differenza sul risultato atteso se viene utilizzato un join sinistro o se viene utilizzato un join esterno sinistro. Il risultato sarà simile, a meno che l'ambiente non si trovi nel server Microsoft SQL. La parola chiave esterna può essere utilizzata o persino omessa senza preoccupazioni, in quanto i risultati non differiscono in alcun modo.

Sommario

I join vengono utilizzati in SQL per confrontare diversi set di dati

Un join interno produce solo un set di record che è presente in due tabelle confrontate

Un join esterno produce il set completo di tutti i record presenti in entrambe le tabelle allo studio

Una clausola 'where' usata per produrre record univoci dopo l'uso di un join completo

Un join cartesiano collega gli elementi sinistro e destro di una tabella.

C'è una differenza notevole in cui join sinistro e join esterno sinistro usati quando si utilizza Microsoft SQL server

Tutto sommato, l'uso dell'istruzione left join o left outer fa riferimento alla stessa affermazione. Poiché non vi è alcuna differenza, si raccomanda l'uso della giuntura esterna sinistra.