Ο ' ΣΥΜΜΕΤΟΧΗ Ο όρος ” χρησιμοποιείται για να συνδυάσει τους πίνακες στη MySQL, αλλά ο πίνακας μπορεί επίσης να συνδεθεί χωρίς τη χρήση του. Πιο συγκεκριμένα, το « ΕΝΩΣΗ », « ΕΝΩΣΗ ΟΛΩΝ 'και το κόμμα' , ” είναι τρεις διαφορετικοί τρόποι που μπορούν να παράγουν το ίδιο αποτέλεσμα με την ρήτρα “JOIN”. Το κόμμα μπορεί να χρησιμοποιηθεί στη θέση του όρου «ΣΥΝΔΕΣΗ», ενώ το «ΕΝΩΣΗ» ή «ΕΝΩΣΗ ΟΛΩΝ» χρησιμοποιούνται με μια δήλωση «ΕΠΙΛΟΓΗ» για να ενωθούν οι εγγραφές δύο πινάκων.
Αυτή η ανάρτηση θα εξηγήσει πώς να ενώσετε δύο πίνακες στη MySQL:
Μέθοδος 1: Συνδέστε δύο πίνακες στο MySQL χρησιμοποιώντας ','
Στη MySQL, οι πίνακες μπορούν να ενωθούν χρησιμοποιώντας ' , 'αντί για το ' ΣΥΜΜΕΤΟΧΗ «ρήτρα. Η σύνταξή του δίνεται παρακάτω:
ΕΠΙΛΕΓΩ *
ΑΠΟ [ πίνακας 1-όνομα ] , [ πίνακας2-όνομα ] ;
Η κύρια διαφορά είναι μόνο η αντικατάσταση της λέξης-κλειδιού ' ΣΥΜΜΕΤΟΧΗ ' με ' , ”:
ΕΠΙΛΕΓΩ *
ΑΠΟ [ πίνακας 1-όνομα ] ΣΥΜΜΕΤΟΧΗ [ πίνακας2-όνομα ] ;
Χρησιμοποιήστε το κόμμα ' , ' σύνταξη με το ' ΟΠΟΥ ” ρήτρα για να ενώσετε τους πίνακες με βάση μια συγκεκριμένη συνθήκη. Η σύνταξη δίνεται παρακάτω:
ΕΠΙΛΕΓΩ *
ΑΠΟ [ πίνακας 1-όνομα ] , [ πίνακας2-όνομα ]
ΟΠΟΥ [ κατάσταση ] ;
Παράδειγμα 1: Χρήση “,” Χωρίς Προϋπόθεση
Ας συμμετάσχουμε» προϊόντα ' και ' δεδομένα χρήστη 'πίνακες με τον καθορισμό' , ' ως εξής:
ΕΠΙΛΕΓΩ *ΑΠΟ προϊόντα, δεδομένα χρήστη.
Παραγωγή
Η έξοδος δείχνει ότι οι πίνακες «προϊόντα» και «δεδομένα χρήστη» έχουν ενωθεί χωρίς τη χρήση της ρήτρας «ΣΥΝΔΕΣΗ».
Παράδειγμα 2: Χρήση «,» με συνθήκη
Ας δούμε ένα παράδειγμα ένωσης δύο πινάκων όπου ' userdata.id ' είναι μεγαλύτερο από 2 :
ΕΠΙΛΕΓΩ *ΑΠΟ προϊόντα, δεδομένα χρήστη
WHERE userdata.id > 2 ;
Παραγωγή
Η έξοδος έδειξε ότι οι επιλεγμένοι πίνακες είχαν ενωθεί με βάση τη δεδομένη συνθήκη.
Μέθοδος 2: Συνδέστε δύο πίνακες στη MySQL χρησιμοποιώντας 'UNION' ή 'UNION ALL'
Στη MySQL, το ' ΕΝΩΣΗ ' ή ' ΕΝΩΣΗ ΟΛΩΝ Οι τελεστές μπορούν να χρησιμοποιηθούν για τη συγχώνευση των συνόλων αποτελεσμάτων πολλαπλών δηλώσεων SELECT. Η σύνταξη δίνεται παρακάτω:
ΕΠΙΛΕΓΩ * ΑΠΟ [ πίνακας 1-όνομα ]ΕΝΩΣΗ | ΕΝΩΣΗ ΟΛΩΝ
ΕΠΙΛΕΓΩ * ΑΠΟ [ πίνακας2-όνομα ]
Η παραπάνω σύνταξη μπορεί να χρησιμοποιηθεί είτε με 'UNION' είτε με 'UNION ALL'.
Παράδειγμα 1: Χρήση του χειριστή «UNION».
Στη MySQL, το ' ΕΝΩΣΗ Ο τελεστής συγχωνεύει τα αποτελέσματα πολλαπλών εντολών SELECT αλλά εξαλείφει τυχόν διπλότυπες σειρές από το αποτέλεσμα. Το ερώτημα δίνεται παρακάτω:
ΕΠΙΛΕΓΩ * ΑΠΟ τα δεδομένα χρήστηΕΝΩΣΗ
ΕΠΙΛΕΓΩ * ΑΠΟ τα δεδομένα των εργαζομένων.
Παραγωγή
Η έξοδος δείχνει ότι το « δεδομένα χρήστη ' και ' δεδομένα εργαζομένων Οι πίνακες έχουν ενωθεί και οι διπλές σειρές έχουν εξαλειφθεί.
Παράδειγμα 2: Χρήση του τελεστή 'UNION ALL'.
Στη MySQL, το ' ΕΝΩΣΗ ΟΛΩΝ Ο τελεστής συγχωνεύει τα αποτελέσματα πολλαπλών δηλώσεων SELECT χωρίς να εξαλείφει τις διπλές σειρές.
Ας εκτελέσουμε το ακόλουθο ερώτημα για μια βαθιά κατανόηση:
ΕΠΙΛΕΓΩ * ΑΠΟ τα δεδομένα χρήστηΕΝΩΣΗ ΟΛΩΝ
ΕΠΙΛΕΓΩ * ΑΠΟ τα δεδομένα των εργαζομένων.
Παραγωγή
Μπορεί να παρατηρηθεί ότι ο πίνακας που προκύπτει περιέχει και τις διπλές σειρές.
Παράδειγμα 3: Χρήση χειριστή «UNION» με την κατάσταση
Στη MySQL, το ' ΕΝΩΣΗ Ο χειριστής ' μπορεί επίσης να χρησιμοποιηθεί με το ' ΟΠΟΥ ρήτρα για το φιλτράρισμα του αποτελέσματος δύο ή περισσότερων δηλώσεων SELECT με βάση μια συγκεκριμένη συνθήκη.
Το παράδειγμα δίνεται παρακάτω:
ΕΠΙΛΕΓΩ ταυτότητα , Όνομα επαφής, Πόλη, Χώρα ΑΠΟ υπάλληλο ΠΟΥ υπάλληλος.id < = 5ΕΝΩΣΗ
ΕΠΙΛΕΓΩ ταυτότητα , Επαφή Όνομα, Πόλη, Χώρα ΑΠΟ Προμηθευτή WHERE Supplier.id < = 5 ;
Παραγωγή
Η έξοδος δείχνει ότι οι πίνακες ' υπάλληλος ' και ' Προμηθευτής ” έχουν ενταχθεί υπό τις καθορισμένες προϋποθέσεις.
συμπέρασμα
Για να ενώσετε δύο ή περισσότερους πίνακες, το ' ΕΝΩΣΗ ',' ΕΝΩΣΗ ΟΛΩΝ 'και το κόμμα' , Το ' μπορεί να χρησιμοποιηθεί αντί για το ' ΣΥΜΜΕΤΟΧΗ «ρήτρα. Το κόμμα χρησιμοποιείται αντικαθιστώντας το ' ΣΥΜΜΕΤΟΧΗ » λέξη-κλειδί. Ο ' ΕΝΩΣΗ ' και ' ΕΝΩΣΗ ΟΛΩΝ ” μπορεί επίσης να χρησιμοποιηθεί για τη σύνδεση πολλών πινάκων με ή χωρίς διπλότυπα. Σε αυτήν την καταγραφή, παρουσιάζεται ένας λεπτομερής οδηγός για την ένωση των πινάκων χωρίς τη χρήση της ρήτρας JOIN.