Η λειτουργία UNION στην Access δημιουργεί ένα ερώτημα συνένωσης το οποίο συνδυάζει τα αποτελέσματα δύο ή περισσότερων ανεξάρτητων ερωτημάτων ή πινάκων.
Σύνταξη
[TABLE] ερώτημα1 UNION [ALL] [TABLE] ερώτημα2 [UNION [ALL] [TABLE] ερώτημα_n [ ... ]]
Η λειτουργία UNION έχει τα εξής τμήματα:
Τμήμα |
Περιγραφή |
Ερώτημα1-n |
Μια πρόταση SELECT, το όνομα ενός αποθηκευμένου ερωτήματος ή το όνομα ενός αποθηκευμένου πίνακα, πριν από τα οποία υπάρχει η λέξη-κλειδί TABLE. |
Παρατηρήσεις
Μπορείτε να συγχωνεύσετε τα αποτελέσματα δύο ή περισσότερων ερωτημάτων, πινάκων και προτάσεων SELECT, με οποιονδήποτε συνδυασμό, σε μία μόνο λειτουργία UNION. Το ακόλουθο παράδειγμα συγχωνεύει έναν υπάρχοντα πίνακα με το όνομα New Accounts και μια πρόταση SELECT:
TABLE [New Accounts] UNION ALL
SELECT *
FROM Customers
WHERE OrderAmount > 1000;
Από προεπιλογή, δεν επιστρέφονται διπλότυπες εγγραφές όταν χρησιμοποιείτε μια λειτουργία UNION. Ωστόσο, μπορείτε να συμπεριλάβετε το predate ALL για να βεβαιωθείτε ότι επιστρέφονται όλες οι εγγραφές. Με αυτόν τον τρόπο, το ερώτημα εκτελείται πιο γρήγορα.
Όλα τα ερωτήματα σε μια λειτουργία UNION πρέπει να ζητούν τον ίδιο αριθμό πεδίων. Ωστόσο, το μέγεθος ή ο τύπος δεδομένων δεν είναι απαραίτητο να είναι ίδια για όλα τα πεδία.
Χρησιμοποιήστε ψευδώνυμα μόνο στην πρώτη πρόταση SELECT, καθώς παραβλέπονται στις υπόλοιπες. Στον όρο ORDER BY, οι παραπομπές σε πεδία πρέπει να χρησιμοποιούν το όνομα των πεδίων που καθορίζεται στην πρώτη εντολή SELECT.
Σημειώσεις:
-
Μπορείτε να χρησιμοποιήσετε έναν όρο GROUP BY ή HAVING σε κάθε όρισμα ερωτήματος για να ομαδοποιήσετε τα δεδομένα που επιστρέφονται.
-
Μπορείτε να χρησιμοποιήσετε έναν όρο ORDER BY στο τέλος του τελευταίου ορίσματος ερωτήματος για να εμφανίσετε τα δεδομένα που επιστρέφονται με μια συγκεκριμένη σειρά.