Συνιστάται, 2024

Επιλογή Συντάκτη

Διαφορά μεταξύ JOIN και UNION σε SQL

JOIN και UNION είναι οι ρήτρες στο SQL, που χρησιμοποιούνται για να συνδυάσουν τα δεδομένα δύο ή περισσοτέρων σχέσεων. Αλλά ο τρόπος με τον οποίο συνδυάζουν τα δεδομένα και τη μορφή του αποτελέσματος που προκύπτει, διαφέρει. Η ρήτρα JOIN συνδυάζει τα χαρακτηριστικά δύο σχέσεων για να σχηματίσουν τις προκύπτουσες πλειάδες ενώ η ρήτρα UNION συνδυάζει το αποτέλεσμα δύο ερωτημάτων. Ας συζητήσουμε τη διαφορά μεταξύ JOIN και UNION με τη βοήθεια του πίνακα σύγκρισης που φαίνεται παρακάτω.

Συγκριτικό διάγραμμα

Βάση σύγκρισηςΣΥΜΜΕΤΟΧΗΕΝΩΣΗ
ΒασικόςΤο JOIN συνδυάζει τα χαρακτηριστικά των πλειάδων που υπάρχουν στις δύο διαφορετικές σχέσεις που μοιράζονται μερικά κοινά πεδία ή ιδιότητες.Η UNION συνδυάζει πλειάδες των σχέσεων που υπάρχουν στο ερώτημα.
ΚατάστασηΤο JOIN ισχύει όταν οι δύο εμπλεκόμενες σχέσεις έχουν τουλάχιστον ένα κοινό χαρακτηριστικό.UNION ισχύει όταν ο αριθμός των στηλών που υπάρχουν στο ερώτημα είναι ίδιο και τα αντίστοιχα χαρακτηριστικά έχουν τον ίδιο τομέα.
ΤύποιΕΣΩΤΕΡΙΚΗ, ΠΛΗΡΗΣ (ΕΞΩΤΕΡΙΚΗ), ΑΡΙΣΤΕΡΑ ΣΥΝΔΕΣΗ, ΔΕΞΙΑ ΣΥΝΔΕΣΗ.ΕΝΩΣΗ και ΟΛΟΥΣ.
ΑποτέλεσμαΤο μήκος των πλειάδων που προκύπτουν είναι περισσότερο σε σύγκριση με το μήκος των πλειάδων των εμπλεκόμενων σχέσεων.Ο αριθμός των πλειάδων που προκύπτουν είναι περισσότερο σε σύγκριση με τον αριθμό των πλειάδων που υπάρχουν σε κάθε σχέση που εμπλέκεται στο ερώτημα.
Διάγραμμα

Ορισμός της σύνδεσης

Η ρήτρα JOIN στο SQL συνδυάζει τις πλειάδες από δύο σχέσεις ή πίνακες με αποτέλεσμα ένα μεγαλύτερο μέγεθος πλειάδας. Η προκύπτουσα πλειάδα περιέχει ιδιότητες τόσο από τη σχέση. Τα χαρακτηριστικά συνδυάζονται με βάση τα κοινά χαρακτηριστικά μεταξύ τους. Οι διάφοροι τύποι JOIN στο SQL είναι INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL OUTER JOIN.

Το INNER JOIN συνδυάζει πλειάδες από τους δύο πίνακες, εφόσον υπάρχει ένα κοινό χαρακτηριστικό μεταξύ των δύο. Η ΑΡΙΣΤΕΡΑ ΣΥΝΑΡΜΟΛΟΓΗΣΗ καταλήγει σε όλες τις πλειάδες του αριστερού πίνακα και αντιστοιχεί στην πλειάδα από το δεξί τραπέζι. Η ΔΙΚΑΙΩΜΑ JOIN έχει ως αποτέλεσμα όλες τις πλειάδες από το δεξί τραπέζι και μόνο την πλειάδα που ταιριάζει από το αριστερό τραπέζι. Η ΠΛΗΡΗ ΕΞΩΤΕΡΙΚΗ ΣΥΝΑΡΜΟΛΟΓΗΣΗ έχει ως αποτέλεσμα όλες τις πλειάδες από το τραπέζι, αν και έχουν αντίστοιχες ιδιότητες ή όχι.

Η INNER JOIN είναι ίδια με την JOIN. Μπορείτε επίσης να αφήσετε τη λέξη INNER και απλά να χρησιμοποιήσετε το JOIN για να εκτελέσετε INNER JOIN.

Ορισμός της UNION

Η UNION είναι μια καθορισμένη λειτουργία στην SQL. Το UNON συνδυάζει το αποτέλεσμα δύο ερωτημάτων. Το αποτέλεσμα της UNION περιλαμβάνει τις πλειάδες και από τις δύο σχέσεις που υπάρχουν στο ερώτημα. Οι προϋποθέσεις που πρέπει να ικανοποιηθούν λαμβάνουν την ΕΝΩΣΗ δύο σχέσεων:

  1. Οι δύο σχέσεις πρέπει να έχουν τον ίδιο αριθμό χαρακτηριστικών.
  2. Οι τομείς του αντίστοιχου χαρακτηριστικού πρέπει να είναι ίδιοι.

Υπάρχουν δύο τύποι ΕΝΩΣΗΣ που είναι UNION και UNION ALL . Το αποτέλεσμα που προκύπτει από τη χρήση της UNION δεν περιλαμβάνει διπλότυπα. Από την άλλη πλευρά, το αποτέλεσμα που επιτυγχάνεται χρησιμοποιώντας το UNION ALL διατηρεί διπλότυπο.

Βασικές διαφορές μεταξύ JOIN και UNION σε SQL

  1. Η κύρια διαφορά μεταξύ JOIN και UNION είναι ότι το JOIN συνδυάζει τις πλειάδες από δύο σχέσεις και οι προκύπτουσες πλειάδες περιλαμβάνουν χαρακτηριστικά από τις δύο σχέσεις. Από την άλλη πλευρά, η UNION συνδυάζει το αποτέλεσμα δύο ερωτημάτων SELECT.
  2. Η ρήτρα JOIN εφαρμόζεται μόνο όταν οι δύο σχετικές σχέσεις έχουν τουλάχιστον ένα κοινό χαρακτηριστικό και στις δύο. Από την άλλη πλευρά, η ΕΝΩΣΗ εφαρμόζεται όταν οι δύο σχέσεις έχουν τον ίδιο αριθμό χαρακτηριστικών και οι τομείς των αντίστοιχων ιδιοτήτων είναι ίδιοι.
  3. Υπάρχουν τέσσερις τύποι συνδυασμού JOIN INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL OUTER JOIN. Υπάρχουν όμως δύο τύποι ΕΝΩΣΗΣ, ΕΝΩΣΗΣ και ΟΛΟΥΣ.
  4. Στο JOIN, η προκύπτουσα πλειάδα έχει το μεγαλύτερο μέγεθος καθώς περιλαμβάνει χαρακτηριστικά τόσο από τη σχέση. Από τα άλλα χέρια, στην UNION ο αριθμός των πλειάδων αυξάνεται ως αποτέλεσμα περιλαμβάνει την πλειάδα και από τις δύο σχέσεις που υπάρχουν στο ερώτημα.

Συμπέρασμα:

Και τα δύο δεδομένα που συνδυάζουν τις λειτουργίες χρησιμοποιούνται σε διαφορετικές καταστάσεις. Το JOIN χρησιμοποιείται όταν θέλουμε να συνδυάσουμε χαρακτηριστικά δύο σχέσεων που έχουν τουλάχιστον ένα κοινό χαρακτηριστικό. Η UNION χρησιμοποιείται όταν θέλουμε να συνδυάσουμε τις πλειάδες των δύο σχέσεων που υπάρχουν στο ερώτημα.

Top