Εισαγωγή στην SQL της Access

ΣΗΜΑΝΤΙΚΟ: Αυτό το άρθρο προέρχεται από μηχανική μετάφραση, δείτε την αποποίηση ευθυνών. Θα βρείτε την αγγλική έκδοση του παρόντος άρθρου εδώ για αναφορά.

Όταν θέλετε να ανακτήσετε δεδομένα από μια βάση δεδομένων, που ζητούν από τα δεδομένα, χρησιμοποιώντας Structured Query Language ή SQL. SQL είναι μια γλώσσα υπολογιστή που μοιάζει Αγγλικά τα προγράμματα βάσης δεδομένων. Εάν γνωρίζετε SQL είναι σημαντική, επειδή κάθε ερώτημα στη Microsoft Access χρησιμοποιεί SQL. Κατανόηση του τρόπου λειτουργίας SQL μπορεί να σας βοηθήσει να δημιουργήσετε ερωτήματα καλύτερα και να την κάνετε πιο εύκολη για να διορθώσετε ένα ερώτημα, όταν δεν επιστρέφει τα αποτελέσματα που θέλετε.

ΣΗΜΕΙΩΣΗ : Δεν μπορείτε να επεξεργαστείτε τη γλώσσα SQL για ένα ερώτημα Web.

Σε αυτό το άρθρο

Τι είναι το SQL;

Βασική SQL όρους: SELECT, FROM, και όπου

Ταξινόμηση των αποτελεσμάτων: ΑΝΆ ΠΑΡΑΓΓΕΛΊΑ

Εργασία με συνοπτικά δεδομένα: ΟΜΑΔΟΠΟΊΗΣΗ κατά και HAVING

Συνδυασμός αποτελέσματα του ερωτήματος: ΈΝΩΣΗΣ

Περισσότερες πληροφορίες σχετικά με το όρος SELECT

Περισσότερες πληροφορίες σχετικά με τον όρο FROM

Περισσότερες πληροφορίες σχετικά με τον όρο WHERE

Τι είναι η SQL;

SQL είναι μια γλώσσα υπολογιστή για την εργασία με τα σύνολα δεδομένων και τις σχέσεις μεταξύ τους. Προγράμματα σχεσιακή βάση δεδομένων, όπως η Access, χρησιμοποιήστε SQL για να εργαστείτε με δεδομένα. Όπως και πολλές γλώσσες υπολογιστή, SQL είναι ένα διεθνές πρότυπο που αναγνωρίζεται από τα πρότυπα οργανισμούς όπως ISO και ANSI.

Μπορείτε να χρησιμοποιήσετε SQL για να περιγράψετε σύνολα δεδομένων που μπορεί να σας βοηθήσει να απαντήσετε σε ερωτήσεις. Όταν χρησιμοποιείτε SQL, πρέπει να χρησιμοποιήσετε τη σωστή σύνταξη. Η σύνταξη είναι το σύνολο των κανόνων με τον οποίο συνδυάζονται σωστά τα στοιχεία του μια γλώσσα. Σύνταξη SQL βασίζεται σε αγγλικά σύνταξη και χρησιμοποιεί πολλά από τα ίδια στοιχεία ως Visual Basic για σύνταξη Applications (VBA).

Για παράδειγμα, μια απλή πρόταση SQL η οποία ανακτά μια λίστα επωνύμων για επαφές των οποίων το όνομα είναι Μαίρη μπορεί να μοιάζει με την εξής:

SELECT Last_Name
FROM Contacts
WHERE First_Name = 'Mary';

ΣΗΜΕΙΩΣΗ : SQL δεν χρησιμοποιείται μόνο για το χειρισμό δεδομένων, αλλά και για τη δημιουργία και την τροποποίηση της σχεδίασης των αντικειμένων βάσης δεδομένων, όπως πίνακες. Το τμήμα της SQL που χρησιμοποιείται για τη δημιουργία και τροποποίηση των αντικειμένων βάσης δεδομένων ονομάζεται γλώσσα ορισμού δεδομένων (DDL). Αυτό το θέμα καλύπτει DDL. Για περισσότερες πληροφορίες, ανατρέξτε στο άρθρο Δημιουργία ή τροποποίηση πινάκων ή ευρετηρίων με χρήση ενός ερωτήματος ορισμού δεδομένων.

Προτάσεις SELECT

Για να περιγράψετε ένα σύνολο δεδομένων, χρησιμοποιώντας την SQL, μπορείτε να γράψετε μια πρόταση SELECT. Μια πρόταση SELECT περιέχει μια πλήρη περιγραφή ενός συνόλου δεδομένων που θέλετε να λάβετε από μια βάση δεδομένων. Περιλαμβάνει τα εξής:

  • Ποιοι πίνακες περιέχουν τα δεδομένα.

  • Με ποιον τρόπο σχετίζονται δεδομένα από διάφορες προελεύσεις.

  • Ποια πεδία ή υπολογισμοί θα δημιουργήσουν τα δεδομένα.

  • Κριτήρια που πρέπει να συμφωνεί με δεδομένα να είναι συμπεριλαμβάνεται.

  • Εάν και πώς θα γίνει ταξινόμηση των αποτελεσμάτων.

Όροι SQL

Όπως μια γραμματική πρόταση, έτσι και μια πρόταση SQL έχει όρους. Κάθε όρος εκτελεί μια λειτουργία για την πρόταση SQL. Ορισμένοι όροι είναι απαραίτητοι σε μια πρόταση SELECT. Ο παρακάτω πίνακας παραθέτει τους πιο συνηθισμένους όρους SQL.

Όρος SQL

Τι κάνει

Απαιτούμενα

SELECT

Παραθέτει τα πεδία που περιέχουν δεδομένα τα οποία σας ενδιαφέρουν.

Ναι

FROM

Παραθέτει τους πίνακες που περιέχουν τα πεδία τα οποία παρατίθενται στον όρο SELECT.

Ναι

WHERE

Καθορίζει το κριτήρια πεδίου που πρέπει να πληρούνται από κάθε εγγραφή για να συμπεριληφθεί στα αποτελέσματα.

Όχι

ORDER BY

Καθορίζει τον τρόπο ταξινόμησης των αποτελεσμάτων.

Όχι

GROUP BY

Σε μια πρόταση SQL που περιέχει συναρτήσεις συγκεντρωτικών αποτελεσμάτων, παραθέτει πεδία τα οποία δεν συνοψίζονται στον όρο SELECT.

Μόνο εάν υπάρχουν τέτοιου είδους πεδία

HAVING

Σε μια πρόταση SQL που περιέχει συναρτήσεις συγκεντρωτικών αποτελεσμάτων, καθορίζει τις συνθήκες που ισχύουν για τα πεδία τα οποία συνοψίζονται στην πρόταση SELECT.

Όχι

Επιμέρους όροι SQL

Κάθε όρος SQL αποτελείται από επιμέρους όρους — συγκρίσιμοι με τα μέρη της ομιλίας. Ο παρακάτω πίνακας παραθέτει τους τύπους των επιμέρους όρων SQL.

Επιμέρους όρος SQL

Συγκρίσιμο μέρος της ομιλίας

Ορισμός

Παράδειγμα

αναγνωριστικό

ουσιαστικό

Ένα όνομα το οποίο χρησιμοποιείτε για να προσδιορίσετε ένα αντικείμενο βάσης δεδομένων, όπως το όνομα ενός πεδίου.

Customers.[Αριθμός τηλεφώνου]

τελεστής

ρήμα ή επίρρημα

Μια λέξη-κλειδί που αντιπροσωπεύει μια ενέργεια ή τροποποιεί μια ενέργεια.

AS

σταθερά

ουσιαστικό

Μια τιμή που δεν αλλάζει, όπως ένας αριθμός ή NULL.

42

παράσταση

επίθετο

Ένας συνδυασμός αναγνωριστικών, τελεστών, σταθερών και συναρτήσεων που αξιολογείται με μία τιμή.

>= Products.[Τιμή μονάδας]

Αρχή της σελίδας

Βασικοί όροι SQL: SELECT, FROM και WHERE

Μια πρόταση SQL λαμβάνει τη γενική μορφή:

SELECT field_1
FROM table_1
WHERE criterion_1
;

Σημειώσεις: 

  • Η Access παραβλέπει τις αλλαγές γραμμών σε μια πρόταση SQL. Ωστόσο, είναι καλό να χρησιμοποιείτε μια γραμμή για κάθε όρο για μεγαλύτερη ευκολία ανάγνωσης των προτάσεων SQL για εσάς και τους άλλους χρήστες.

  • Κάθε πρόταση SELECT τελειώνει με ένα ελληνικό ερωτηματικό (;). Το ελληνικό ερωτηματικό μπορεί να εμφανίζεται στο τέλος του τελευταίου όρου ή σε μια γραμμή μόνο του στο τέλος της πρότασης SQL.

Ένα παράδειγμα στην Access

Το παρακάτω παράδειγμα παρουσιάζει πώς θα φαίνεται μια πρόταση SQL για ένα απλό ερώτημα επιλογής στην Access:

Καρτέλα αντικειμένου SQL που παρουσιάζει μια πρόταση SELECT

1. όρος SELECT

2. όρος FROM

3. όρος WHERE

Αυτό το παράδειγμα πρότασης SQL διαβάζεται ως εξής "Επιλέξτε τα δεδομένα που είναι αποθηκευμένα στα πεδία με το όνομα "Διεύθυνση ηλεκτρονικού ταχυδρομείου" και "Εταιρεία" από τον πίνακα που ονομάζεται "Επαφές" και ειδικά αυτές τις εγγραφές στις οποίες η τιμή στο πεδίο "Πόλη" είναι Θεσσαλονίκη."

Ας εξετάσουμε το παράδειγμα, έναν όρο κάθε φορά, για να δείτε πώς λειτουργεί η σύνταξη SQL.

Ο όρος SELECT

SELECT [E-mail Address], Company

Πρόκειται για τον όρο SELECT. Αποτελείται από έναν τελεστή (SELECT) ακολουθούμενο από δύο αναγνωριστικά ([Διεύθυνση ηλεκτρονικού ταχυδρομείου] και Εταιρεία).

Εάν ένα αναγνωριστικό περιέχει διαστήματα ή ειδικούς χαρακτήρες (όπως "Διεύθυνση ηλεκτρονικού ταχυδρομείου"), πρέπει να περικλείονται σε αγκύλες.

Ένας όρος SELECT δεν χρειάζεται να αναφέρει τους πίνακες που περιέχουν τα πεδία και δεν μπορεί να καθορίζει τις συνθήκες που πρέπει να πληρούνται από τα δεδομένα που θα συμπεριληφθούν.

Ο όρος SELECT εμφανίζεται πάντα μπροστά από τον όρο FROM σε μια πρόταση SELECT.

Ο όρος FROM

FROM Contacts

Πρόκειται για τον όρο FROM. Αποτελείται από έναν τελεστή (FROM), ακολουθούμενο από ένα αναγνωριστικό (Επαφές).

Ένας όρος FROM δεν παραθέτει τα πεδία που θα επιλεχθούν.

Ο όρος WHERE

WHERE City="Seattle"

Πρόκειται για τον όρο WHERE. Αποτελείται από έναν τελεστή (WHERE) ακολουθούμενο από μια παράσταση (City = "Θεσσαλονίκη").

ΣΗΜΕΙΩΣΗ : Σε αντίθεση με τους όρους SELECT και FROM, ο όρος WHERE δεν είναι απαιτούμενο στοιχείο σε μια πρόταση SELECT.

Μπορείτε να πραγματοποιήσετε πολλές από τις ενέργειες που SQL σάς επιτρέπει να κάνετε χρησιμοποιώντας SELECT, FROM, και WHERE. Περισσότερες πληροφορίες σχετικά με τον τρόπο Μπορείτε να χρησιμοποιήσετε αυτές τις φράσεις παρουσιάζονται σε αυτές τις ενότητες στο τέλος αυτού του άρθρου:

Περισσότερες πληροφορίες σχετικά με το όρος SELECT

Περισσότερες πληροφορίες σχετικά με τον όρο FROM

Περισσότερες πληροφορίες σχετικά με τον όρο WHERE

Ταξινόμηση των αποτελεσμάτων: ORDER BY

Όπως το Microsoft Office Excel, έτσι και η Access σάς επιτρέπει να ταξινομήσετε τα αποτελέσματα ερωτήματος σε ένα φύλλο δεδομένων. Μπορείτε, επίσης, να καθορίσετε στο ερώτημα πώς θέλετε να ταξινομήσετε τα αποτελέσματα όταν εκτελείται το ερώτημα, χρησιμοποιώντας έναν όρο ORDER BY. Εάν χρησιμοποιείτε έναν όρο ORDER BY, είναι ο τελευταίος όρος της πρότασης SQL.

Ένας όρος ORDER BY περιέχει μια λίστα με τα πεδία που θέλετε να χρησιμοποιήσετε για ταξινόμηση, με την ίδια σειρά που θέλετε να εφαρμόσετε τις λειτουργίες ταξινόμησης.

Για παράδειγμα, ας υποθέσουμε ότι θέλετε τα αποτελέσματα να ταξινομούνται πρώτα κατά την τιμή του πεδίου "Εταιρεία" με φθίνουσα σειρά και  — εάν υπάρχουν εγγραφές με την ίδια τιμή για το πεδίο "Εταιρεία" — να ταξινομούνται δίπλα από τις τιμές στο πεδίο "Διεύθυνση ηλεκτρονικού ταχυδρομείου" με αύξουσα σειρά. Ο όρος ORDER BY θα μοιάζει ως εξής:

ORDER BY Company DESC, [E-mail Address]

ΣΗΜΕΙΩΣΗ : Από προεπιλογή, η Access ταξινομεί τις τιμές σε αύξουσα σειρά (A-Ω, μικρότερο προς το μεγαλύτερο). Αντίθετα, χρησιμοποιήστε τη λέξη-κλειδί DESC για να ταξινομήσετε τιμές σε φθίνουσα σειρά.

Για περισσότερες πληροφορίες σχετικά με τη ΣΕΙΡΆ από τον όρο FROM, ανατρέξτε στο θέμα ΣΕΙΡΆ από τον όρο FROM.

Αρχή της σελίδας

Εργασία με συνοπτικά δεδομένα: GROUP BY και HAVING

Μερικές φορές θέλετε να εργαστείτε με συνοπτικά δεδομένα, όπως τις συνολικές πωλήσεις σε έναν μήνα ή τα πιο ακριβή στοιχεία σε μια απογραφή. Για να κάνετε αυτό, εφαρμόζετε ένα συνάρτηση συγκεντρωτικών αποτελεσμάτων σε ένα πεδίο στον όρο SELECT. Για παράδειγμα, εάν θέλετε το ερώτημά σας για να εμφανίσετε το πλήθος των διευθύνσεων ηλεκτρονικού ταχυδρομείου που εμφανίζεται για κάθε εταιρεία, όρο SELECT μπορεί να μοιάζει με το εξής:

SELECT COUNT([E-mail Address]), Company

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

Καθορισμός πεδίων που δεν χρησιμοποιούνται σε μια συνάρτηση συγκεντρωτικών αποτελεσμάτων: ο όρος GROUP BY

Όταν χρησιμοποιείτε συναρτήσεις συγκεντρωτικών αποτελεσμάτων, συνήθως πρέπει να δημιουργήσετε και έναν όρο GROUP BY. Ο όρος GROUP BY παραθέτει όλα τα πεδία στα οποία δεν εφαρμόζετε μια συνάρτηση συγκεντρωτικών αποτελεσμάτων. Εάν εφαρμόσετε συναρτήσεις συγκεντρωτικών αποτελεσμάτων σε όλα τα πεδία ενός ερωτήματος, δεν χρειάζεται να δημιουργήσετε τον όρο GROUP BY.

Ένας όρος GROUP BY ακολουθεί αμέσως μετά τον όρο WHERE ή τον όρο FROM εάν δεν υπάρχει ο όρος WHERE. Ένας όρος GROUP BY παραθέτει τα πεδία που εμφανίζονται στον όρο SELECT.

Για παράδειγμα, για να συνεχίσουμε το προηγούμενο παράδειγμα, εάν ο όρος SELECT εφαρμόζει μια συνάρτηση συγκεντρωτικών αποτελεσμάτων στο πεδίο [Διεύθυνση ηλεκτρονικού ταχυδρομείου] αλλά όχι στο πεδίο "Εταιρεία", ο όρος GROUP BY θα μοιάζει ως εξής:

GROUP BY Company

Για περισσότερες πληροφορίες σχετικά με τον όρο GROUP BY, ανατρέξτε στο θέμα ΟΜΆΔΑΣ από τον όρο FROM.

Περιορισμός συγκεντρωτικών τιμών με τη χρήση κριτηρίων ομάδας: το Όρος HAVING

Εάν θέλετε να χρησιμοποιήσετε κριτήρια για να περιορίσετε τα αποτελέσματα, αλλά το πεδίο στο οποίο θέλετε να εφαρμόσετε τα κριτήρια χρησιμοποιείται σε μια συνάρτηση συγκεντρωτικών αποτελεσμάτων, δεν μπορείτε να χρησιμοποιήσετε έναν όρο WHERE. Αντίθετα, μπορείτε να χρησιμοποιήσετε έναν όρο HAVING. Ο όρος HAVING λειτουργεί όπως ο όρος WHERE, αλλά χρησιμοποιείται για συγκεντρωτικά δεδομένα.

Για παράδειγμα, ας υποθέσουμε ότι χρησιμοποιείτε τη συνάρτηση AVG (η οποία υπολογίζει μια μέση τιμή) με το πρώτο πεδίο στον όρο SELECT:

SELECT COUNT([E-mail Address]), Company

Εάν θέλετε το ερώτημα να περιορίσει τα αποτελέσματα βάσει της τιμής από τη συνάρτηση COUNT, δεν μπορείτε να χρησιμοποιήσετε ένα κριτήριο για το συγκεκριμένο πεδίο στον όρο WHERE. Αντίθετα, μπορείτε να τοποθετήσετε τα κριτήρια σε έναν όρο HAVING. Για παράδειγμα, στην περίπτωση που θέλετε μόνο το ερώτημα να επιστρέψει γραμμές εάν υπάρχουν περισσότερες από μία διευθύνσεις ηλεκτρονικού ταχυδρομείου που σχετίζονται με την εταιρεία, ο όρος HAVING μοιάζει ως εξής:

HAVING COUNT([E-mail Address])>1

ΣΗΜΕΙΩΣΗ : Ένα ερώτημα μπορεί να έχει έναν όρο WHERE και έναν όρο HAVING — τα κριτήρια για πεδία που δεν χρησιμοποιούνται σε μια συνάρτηση συγκεντρωτικών αποτελεσμάτων εμπίπτουν στον όρο WHERE και τα κριτήρια για πεδία που χρησιμοποιούνται με τις συναρτήσεις συγκεντρωτικών αποτελεσμάτων εμπίπτουν στον όρο HAVING.

Για περισσότερες πληροφορίες σχετικά με τον όρο HAVING, ανατρέξτε στο θέμα ΑΝΤΙΜΕΤΩΠΊΖΕΤΕ όρο.

Αρχή της σελίδας

Συνδυασμός αποτελεσμάτων ερωτήματος: UNION

Όταν θέλετε να αναθεωρήσετε όλα τα δεδομένα που επιστρέφονται από πολλά όμοια ερωτήματα επιλογής, ως συνδυασμένο σύνολο, μπορείτε να χρησιμοποιήσετε τον τελεστή UNION.

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

ΣΗΜΕΙΩΣΗ : Για τους σκοπούς ενός ερωτήματος συνένωσης, οι τύποι δεδομένων αριθμών και κειμένου είναι συμβατοί.

Όταν χρησιμοποιείτε τον τελεστή UNION, μπορείτε επίσης να καθορίσετε εάν τα αποτελέσματα του ερωτήματος πρέπει να περιλαμβάνουν διπλές γραμμές, εάν υπάρχουν, χρησιμοποιώντας τη λέξη-κλειδί ALL.

Η βασική σύνταξη SQL για ένα ερώτημα συνένωσης που συνδυάζει δύο προτάσεις SELECT είναι η εξής:

SELECT field_1
FROM table_1
UNION [ALL]
SELECT field_a
FROM table_a
;

Για παράδειγμα, ας υποθέσουμε ότι έχετε έναν πίνακα με το όνομα "Προϊόντα" και έναν άλλο πίνακα με το όνομα "Υπηρεσίες". Και οι δύο πίνακες έχουν πεδία που περιέχουν το όνομα του προϊόντος ή της υπηρεσίας, την τιμή, τη διαθεσιμότητα εγγύησης και αν προσφέρετε το προϊόν ή την υπηρεσία κατά αποκλειστικότητα. Παρόλο που στον πίνακα "Προϊόντα" αποθηκεύονται πληροφορίες εγγύησης και στον πίνακα "Υπηρεσίες" αποθηκεύονται πληροφορίες για την εγγύηση, οι βασικές πληροφορίες είναι οι ίδιες (αν ένα συγκεκριμένο προϊόν ή υπηρεσία περιλαμβάνει μια υπόσχεση ποιότητας). Μπορείτε να χρησιμοποιήσετε ένα ερώτημα συνένωσης, όπως το παρακάτω, για να συνδυάσετε τα τέσσερα πεδία από τους δύο πίνακες:

SELECT name, price, warranty_available, exclusive_offer
FROM Products
UNION ALL
SELECT name, price, guarantee_available, exclusive_offer
FROM Services
;

Για περισσότερες πληροφορίες σχετικά με τον τρόπο για να συνδυάσετε προτάσεις SELECT, χρησιμοποιώντας τον τελεστή ΈΝΩΣΗΣ, ανατρέξτε στο άρθρο συνδυασμός των αποτελεσμάτων πολλών ερωτημάτων επιλογής χρησιμοποιώντας ένα ερώτημα συνένωσης.

Αρχή της σελίδας

Περισσότερες πληροφορίες για τον όρο SELECT

Σε μια πρόταση SELECT, ο όρος SELECT παραθέτει τα πεδία που περιέχουν δεδομένα που θέλετε να χρησιμοποιήσετε.

Χρησιμοποιήστε αγκύλες για να περικλείσετε τα αναγνωριστικά

Μπορείτε να χρησιμοποιήσετε αγκύλες για να περικλείσετε το όνομα ενός πεδίου σε έναν όρο SELECT. Εάν το όνομα δεν περιέχει διαστήματα ή ειδικούς χαρακτήρες (όπως τα σημεία στίξης), οι αγκύλες είναι προαιρετικές. Εάν το όνομα περιέχει κενά διαστήματα ή ειδικούς χαρακτήρες, πρέπει να χρησιμοποιήσετε τις αγκύλες.

Συμβουλή: Ένα όνομα που περιέχει κενά διαστήματα να είναι πιο ευανάγνωστο και μπορείτε να εξοικονομήσετε χρόνο όταν σχεδίασης φορμών και εκθέσεων, αλλά ίσως καταλήξετε πραγματοποίηση πληκτρολογήσετε περισσότερα όταν γράφετε προτάσεις SQL. Αυτό το γεγονός που πρέπει να λάβετε υπόψη όταν ονόματα αντικειμένων στη βάση δεδομένων σας.

Εάν η πρόταση SQL έχει δύο ή περισσότερα πεδία με το ίδιο όνομα, πρέπει να προσθέσετε το όνομα του αρχείου προέλευσης δεδομένων κάθε πεδίου στο όνομα του πεδίου στον όρο SELECT. Μπορείτε να χρησιμοποιήσετε το ίδιο όνομα για την προέλευση δεδομένων που χρησιμοποιείτε στον όρο FROM.

Επιλέξτε όλα τα πεδία

Σε περίπτωση που θέλετε να συμπεριλάβετε όλα τα πεδία από ένα αρχείο προέλευσης δεδομένων, μπορείτε να εμφανίσετε όλα τα πεδία ξεχωριστά στον όρο SELECT ή να χρησιμοποιήσετε το χαρακτήρα μπαλαντέρ αστερίσκου (*). Όταν χρησιμοποιείτε τον αστερίσκο, η Access προσδιορίζει όταν εκτελείται το ερώτημα τα πεδία που περιέχονται στο αρχείο προέλευσης δεδομένων και περιλαμβάνει όλα αυτά τα πεδία στο ερώτημα. Αυτό βοηθά να βεβαιωθείτε ότι το ερώτημα παραμένει ενημερωμένο εάν νέα πεδία προστεθούν στο αρχείο προέλευσης δεδομένων.

Μπορείτε να χρησιμοποιήσετε τον αστερίσκο με ένα ή περισσότερα αρχεία προέλευσης δεδομένων σε μια πρόταση SQL. Εάν χρησιμοποιείτε τον αστερίσκο και υπάρχουν πολλά αρχεία προέλευσης δεδομένων, πρέπει να συμπεριλάβετε το όνομα του αρχείου προέλευσης δεδομένων μαζί με τον αστερίσκο έτσι, ώστε η Access να καθορίσει το αρχείο προέλευσης δεδομένων από το οποίο θα συμπεριλάβει όλα τα πεδία.

Για παράδειγμα, ας υποθέσουμε ότι θέλετε να επιλέξετε όλα τα πεδία από τον πίνακα "Παραγγελίες", αλλά μόνο τη διεύθυνση ηλεκτρονικού ταχυδρομείου από τον πίνακα "Επαφές". Ο όρος SELECT θα μοιάζει ως εξής:

SELECT Orders.*, Contacts.[E-mail Address]

ΣΗΜΕΙΩΣΗ : Παρακολουθήστε πότε χρησιμοποιείτε τον αστερίσκο. Εάν νέα πεδία προστεθούν αργότερα στο αρχείο προέλευσης δεδομένων και δεν έχετε κάνει προγραμματισμό για αυτά, τα αποτελέσματα του ερωτήματος ενδέχεται να μην είναι τα αναμενόμενα.

Επιλέξτε διακριτές τιμές

Εάν γνωρίζετε ότι η πρόταση θα επιλέξει περιττά δεδομένα και θα προτιμούσατε να βλέπετε μόνο διακριτές τιμές, μπορείτε να χρησιμοποιήσετε τη λέξη-κλειδί DISTINCT στον όρο SELECT. Για παράδειγμα, ας υποθέσουμε ότι καθένας από τους πελάτες σας αντιπροσωπεύουν πολλά διαφορετικά ενδιαφέροντα, μερικά από τα οποία χρησιμοποιούν τον ίδιο αριθμό τηλεφώνου. Εάν θέλετε να βεβαιωθείτε ότι βλέπετε κάθε αριθμό τηλεφώνου μόνο μία φορά, ο όρος SELECT εμφανίζεται ως εξής:

SELECT DISTINCT [txtCustomerPhone]

Χρήση ονομάτων υποκατάστασης για πεδία ή παραστάσεις: η λέξη-κλειδί AS

Μπορείτε να αλλάξετε την ετικέτα που εμφανίζεται για οποιοδήποτε πεδίο σε προβολή φύλλου δεδομένων, χρησιμοποιώντας τη λέξη-κλειδί AS και ένα ψευδώνυμο πεδίου στον όρο SELECT. Ένα ψευδώνυμο πεδίου είναι ένα όνομα που αντιστοιχίζετε σε ένα πεδίο ερωτήματος για να κάνετε πιο ευανάγνωστα τα αποτελέσματα. Για παράδειγμα, εάν θέλετε να επιλέξετε δεδομένα από ένα πεδίο που ονομάζεται txtCustPhone και το πεδίο περιέχει αριθμούς τηλεφώνου πελάτη, μπορείτε να βελτιώσετε την αναγνωσιμότητα των αποτελεσμάτων χρησιμοποιώντας ένα ψευδώνυμο πεδίου στη δήλωση SELECT σας, ως εξής:

SELECT [txtCustPhone] AS [Customer Phone]

ΣΗΜΕΙΩΣΗ : Πρέπει να χρησιμοποιήσετε ένα ψευδώνυμο πεδίου όταν χρησιμοποιείτε μια παράσταση σε έναν όρο SELECT.

Επιλέξτε χρησιμοποιώντας μια παράσταση

Ορισμένες φορές, θέλετε να κοιτάξετε υπολογισμούς με βάση τα δεδομένα σας ή ανάκτηση μόνο ένα τμήμα των δεδομένων ενός πεδίου. Για παράδειγμα, ας υποθέσουμε ότι θέλετε να επιστρέψετε το έτος που έχουν γεννήθηκε πελάτες, με βάση τα δεδομένα στο πεδίο "ημερομηνία γέννησης" στη βάση δεδομένων σας. Ενδέχεται να όρο SELECT έχει την εξής μορφή:

SELECT DatePart("yyyy",[BirthDate]) AS [Birth Year]

Αυτή η παράσταση αποτελείται από το συνάρτηση DatePart και τα δύο ορίσματα — "εεεε" (μια σταθερά), και [BirthDate] (αναγνωριστικό).

Μπορείτε να χρησιμοποιήσετε οποιαδήποτε έγκυρη παράσταση ως πεδίο, αν η παράσταση εξαγάγει μια μεμονωμένη τιμή όταν δοθεί μια μεμονωμένη τιμή εισόδου.

Αρχή της σελίδας

Περισσότερες πληροφορίες για τον όρο FROM

Σε μια πρόταση SELECT, ο όρος FROM καθορίζει τους πίνακες ή τα ερωτήματα που περιέχουν τα δεδομένα τα οποία θα χρησιμοποιήσει ο όρος SELECT.

Ας υποθέσουμε ότι θέλετε να μάθετε τον αριθμό τηλεφώνου ενός συγκεκριμένου πελάτη. Υποθέτοντας ότι ο πίνακας που περιέχει το πεδίο το οποίο αποθηκεύει αυτά τα στοιχεία ονομάζεται tblCustomer, ο όρος FROM θα μοιάζει ως εξής:

FROM tblCustomer

Χρησιμοποιήστε αγκύλες για να περικλείσετε τα αναγνωριστικά

Μπορείτε να χρησιμοποιήσετε αγκύλες για να περικλείσετε το όνομα. Εάν το όνομα δεν περιέχει κενά διαστήματα ή ειδικούς χαρακτήρες (όπως τα σημεία στίξης), οι αγκύλες είναι προαιρετικές. Εάν το όνομα περιέχει κενά διαστήματα ή ειδικούς χαρακτήρες, πρέπει να χρησιμοποιήσετε τις αγκύλες.

Συμβουλή: Ένα όνομα που περιέχει κενά διαστήματα να είναι πιο ευανάγνωστο και μπορείτε να εξοικονομήσετε χρόνο όταν σχεδίασης φορμών και εκθέσεων, αλλά ίσως καταλήξετε πραγματοποίηση πληκτρολογήσετε περισσότερα όταν γράφετε προτάσεις SQL. Αυτό το γεγονός που πρέπει να λάβετε υπόψη όταν ονόματα αντικειμένων στη βάση δεδομένων σας.

Χρήση ονομάτων υποκατάστασης για τα αρχεία προέλευσης δεδομένων

Μπορείτε να χρησιμοποιήσετε ένα διαφορετικό όνομα για να αναφερθείτε σε ένα αρχείο προέλευσης δεδομένων σε μια πρόταση SELECT, χρησιμοποιώντας ένα ψευδώνυμο πίνακα στον όρο FROM. Ένα ψευδώνυμο πίνακα είναι ένα όνομα που αντιστοιχίζετε σε ένα αρχείο προέλευσης δεδομένων σε ένα ερώτημα όταν χρησιμοποιείτε μια παράσταση ως αρχείο προέλευσης δεδομένων ή για να διευκολύνετε την πληκτρολόγηση και την ανάγνωση της πρότασης SQL. Αυτό μπορεί να είναι ιδιαίτερα χρήσιμο εάν το όνομα του αρχείου προέλευσης δεδομένων είναι μεγάλο ή δύσκολο στην πληκτρολόγηση, ειδικά όταν υπάρχουν πολλά πεδία που έχουν το ίδιο όνομα από διαφορετικούς πίνακες.

Για παράδειγμα, εάν θέλετε να επιλέξετε δεδομένα από δύο πεδία και τα δύο συγκεκριμένα αναγνωριστικά, ένα από τα οποία προέρχεται από τον πίνακα tblCustomer και το άλλο από τον tblCustomer tblOrder, ο όρος SELECT θα μοιάζει ως εξής:

SELECT [tblCustomer].[ID], [tblOrder].[ID]

Χρησιμοποιώντας τα ψευδώνυμα πίνακα στον όρο FROM, μπορείτε να διευκολύνετε την πληκτρολόγηση του ερωτήματος. Ο όρος FROM, με ψευδώνυμα πίνακα, θα μοιάζει ως εξής:

FROM [tblCustomer] AS [C], [tblOrder] AS [O]

Στη συνέχεια, μπορείτε να χρησιμοποιήσετε αυτά τα ψευδώνυμα πίνακα στο όρο SELECT, ως εξής:

SELECT [C].[ID], [O].[ID]

ΣΗΜΕΙΩΣΗ : Όταν χρησιμοποιείτε ένα ψευδώνυμο πίνακα, μπορείτε να αναφερθείτε στο αρχείο προέλευσης δεδομένων στην πρόταση SQL, χρησιμοποιώντας το ψευδώνυμο ή χρησιμοποιώντας το πλήρες όνομα του αρχείου προέλευσης δεδομένων.

Σύνδεση σχετικών δεδομένων

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

Για να συνδυάσετε τις πληροφορίες από δύο αρχεία προέλευσης δεδομένων, πρέπει να εκτελέσετε μια λειτουργία συνδέσμου στο πεδίο που έχουν κοινό. Όταν οι τιμές που είναι αποθηκευμένες σε αυτό το πεδίο ταιριάζουν, τα δεδομένα από τις εγγραφές συνδυάζονται στα αποτελέσματα.

Εκτός από το συνδυασμό δεδομένων, μπορείτε επίσης να χρησιμοποιήσετε ένα σύνδεσμο για να καθορίσετε αν θα συμπεριλάβετε εγγραφές από έναν από τους δύο πίνακες σε περίπτωση που δεν υπάρχει αντίστοιχη εγγραφή στο σχετιζόμενο πίνακα.

Για παράδειγμα, ας υποθέσουμε ότι θέλετε να χρησιμοποιήσετε δεδομένα από δύο πίνακες σε ένα ερώτημα: "πνκπελάτης" και "πνκπαραγγελία". Οι δύο πίνακες και τα δύο έχουν ένα πεδίο, CustomerID, που προσδιορίζει ένα ο πελάτης. Κάθε εγγραφή στον πίνακα "πνκπελάτης" μπορεί να έχει ένα ή περισσότερα αντίστοιχες εγγραφές στον πίνακα "πνκπαραγγελία" και τις αντίστοιχες τιμές μπορούν να προσδιορίζονται με τιμές στο πεδίο Κωδικός πελάτη.

Εάν θέλετε να ενώσετε τους πίνακες έτσι, ώστε το ερώτημα να συνδυάζει τις εγγραφές από τους πίνακες, αποκλείοντας εγγραφές από έναν από τους δύο πίνακες σε περίπτωση που δεν υπάρχει αντίστοιχη εγγραφή στον άλλο πίνακα, ο όρος FROM θα μοιάζει ως εξής (εδώ έχει προστεθεί αλλαγή γραμμής για ευκολία στην ανάγνωση):

FROM [tblCustomer] INNER JOIN [tblOrder]
ON [tblCustomer].[CustomerID]=[tblOrder].[CustomerID]

Στη Microsoft Office Access, οι σύνδεσμοι παρουσιάζονται στον όρο FROM μιας πρότασης SELECT. Υπάρχουν δύο τύποι συνδέσμων: εσωτερικοί σύνδεσμοι και εξωτερικοί σύνδεσμοι. Στις παρακάτω ενότητες περιγράφονται αυτοί οι δύο τύποι συνδέσμων.

Εσωτερικοί σύνδεσμοι

Οι εσωτερικοί σύνδεσμοι είναι ο πιο κοινός τύπος συνδέσμου. Όταν εκτελείται ένα ερώτημα με έναν εσωτερικό σύνδεσμο, οι μόνες εγγραφές που περιλαμβάνονται στα αποτελέσματα του ερωτήματος είναι αυτές οι εγγραφές όπου υπάρχει μια κοινή τιμή και στους δύο συνδεδεμένους πίνακες.

Ένας εσωτερικός σύνδεσμος έχει την παρακάτω σύνταξη (εδώ έχει προστεθεί αλλαγή γραμμής για ευκολία στην ανάγνωση):

FROM table1 INNER JOIN table2
ON table1.field1 compopr table2.field2

Ο παρακάτω πίνακας περιγράφει τα διάφορα τμήματα μιας λειτουργίας INNER JOIN.

Τμήμα

Περιγραφή

πίνακας1, πίνακας2

Τα ονόματα των πινάκων από τους οποίους γίνεται συνδυασμός των εγγραφών.

πεδίο1, πεδίο2

Τα ονόματα των πεδίων που ενώνονται. Εάν δεν είναι αριθμητικά, τα πεδία θα πρέπεί να είναι του ίδιου τύπος δεδομένων και να περιέχουν το ίδιο είδος δεδομένων, δεν χρειάζεται όμως να έχουν το ίδιο όνομα.

τελεστής_σύγκρισης

Οποιοσδήποτε σχεσιακός τελεστής σύγκρισης: "=," "<," ">," "<=," ">=," ή "<>."

Εξωτερικοί σύνδεσμοι

Οι εξωτερικοί σύνδεσμοι είναι παρόμοιοι με τους εσωτερικούς συνδέσμους επειδή δίνουν εντολή σε ένα ερώτημα για τον τρόπο συνδυασμού των πληροφοριών από δύο προελεύσεις. Διαφέρουν επειδή καθορίζουν επίσης αν θα συμπεριληφθούν δεδομένα όπου δεν υπάρχει κοινή τιμή. Οι εξωτερικοί σύνδεσμοι είναι κατευθυντήριοι: μπορείτε να καθορίσετε αν θα συμπεριληφθούν όλες οι εγγραφές από το πρώτο αρχείο προέλευσης δεδομένων που καθορίζεται στο σύνδεσμο (που ονομάζεται αριστερός σύνδεσμος) ή αν θα συμπεριληφθούν όλες οι εγγραφές από το δεύτερο αρχείο προέλευσης δεδομένων στο σύνδεσμο (που ονομάζεται δεξιός σύνδεσμος).

Ένας εξωτερικός σύνδεσμος έχει την εξής σύνταξη:

ΑΠΌ τον table1 [ΑΡΙΣΤΕΡΆ | RIGHT] JOIN πίνακας2
ON πίνακας1.πεδίο1 τελεστής_σύγκρισης πίνακας2.πεδίο2

Ο παρακάτω πίνακας περιγράφει τα διάφορα τμήματα των λειτουργιών LEFT JOIN και RIGHT JOIN.

Τμήμα

Περιγραφή

πίνακας1, πίνακας2

Τα ονόματα των πινάκων από τους οποίους γίνεται συνδυασμός των εγγραφών.

πεδίο1, πεδίο2

Τα ονόματα των πεδίων που είναι συνδεδεμένοι. Τα πεδία πρέπει να έχουν το ίδιο τύπος δεδομένων και περιέχουν το ίδιο είδος δεδομένων, αλλά δεν χρειάζεται να έχουν το ίδιο όνομα.

τελεστής_σύγκρισης

Οποιοσδήποτε σχεσιακός τελεστής σύγκρισης: "=," "<," ">," "<=," ">=," ή "<>."

Για περισσότερες πληροφορίες σχετικά με τους συνδέσμους, ανατρέξτε στο άρθρο σύνδεση πινάκων και ερωτημάτων.

Αρχή της σελίδας

Περισσότερες πληροφορίες για τον όρο WHERE

Όταν θέλετε να χρησιμοποιήσετε δεδομένα για να περιορίσετε τον αριθμό των εγγραφών που επιστρέφονται σε ένα ερώτημα, μπορείτε να χρησιμοποιήσετε ερώτημα κριτήρια στον όρο WHERE μιας πρότασης SELECT. Ένα κριτήριο ερωτήματος είναι παρόμοια με έναν τύπο — είναι μια συμβολοσειρά που μπορεί να αποτελούνται από το πεδίο αναφορές, τελεστές και σταθερές. Κριτήρια ερωτήματος είναι ένας τύπος παράσταση.

Στον παρακάτω πίνακα παρουσιάζονται μερικά δείγματα κριτηρίων και περιγράφεται ο τρόπος λειτουργίας τους.

Κριτήρια

Περιγραφή

>25 και <50

Το κριτήριο αυτό εφαρμόζεται σε πεδίο αριθμού, όπως τα πεδία "Τιμή" ή "Μονάδες στο στοκ". Περιλαμβάνει μόνο αυτές τις εγγραφές όπου το πεδίο περιέχει μια τιμή μεγαλύτερη από 25 και μικρότερη από 50.

DateDiff ("εεεε", [Ημερ.Γέννησης], Ημερομηνία()) > 30

Το κριτήριο αυτό εφαρμόζεται στο πεδίο "Ημερομηνία/ώρα", όπως είναι το πεδίο "Ημερομηνία γέννησης". Στο αποτέλεσμα αυτού του ερωτήματος περιλαμβάνονται μόνο οι εγγραφές, όπου ο αριθμός των ετών μεταξύ της ημερομηνίας γέννησης ενός ατόμου και της σημερινής ημερομηνίας είναι μεγαλύτερη από 30.

Είναι μηδέν

Το κριτήριο αυτό μπορεί να εφαρμοστεί σε οποιοδήποτε είδος πεδίου για να παρουσιαστούν οι εγγραφές όπου η τιμή του πεδίου είναι μηδέν.

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

ΣΗΜΑΝΤΙΚΟ: Εάν χρησιμοποιείται ένα πεδίο με μια συνάρτηση συγκεντρωτικών αποτελεσμάτων, δεν μπορείτε να καθορίσετε κριτήρια για αυτό το πεδίο σε μια πρόταση WHERE. Αντί για αυτό, μπορείτε να χρησιμοποιήσετε έναν όρο HAVING για να καθορίσετε κριτήρια για συγκεντρωτική πεδία. Για περισσότερες πληροφορίες, ανατρέξτε στην ενότητα εργασία με συνοπτικά δεδομένα: ΟΜΑΔΟΠΟΊΗΣΗ κατά και HAVING.

Σύνταξη του όρου WHERE

Ένας όρος WHERE έχει την εξής βασική σύνταξη:

WHERE field = criterion

Για παράδειγμα, ας υποθέσουμε ότι θέλετε τον αριθμό τηλεφώνου ενός πελάτη, αλλά μπορείτε να θυμηθείτε μόνο ότι το επώνυμο του πελάτη είναι Κινήνης. Αντί να εξετάσετε όλους τους αριθμούς τηλεφώνου στη βάση δεδομένων σας, μπορείτε να χρησιμοποιήσετε έναν όρο WHERE για να περιορίσετε τα αποτελέσματα και να κάνετε πιο εύκολη την εύρεση του αριθμού τηλεφώνου που θέλετε. Αν υποθέσουμε ότι τα επώνυμα αποθηκεύονται σε ένα πεδίο που ονομάζεται "Επώνυμο", ο όρος WHERE εμφανίζεται ως εξής:

WHERE [LastName]='Bagel'

ΣΗΜΕΙΩΣΗ : Δεν χρειάζεται να τα κριτήρια στον όρο WHERE σας με βάση την αντιστοιχία των τιμών. Μπορείτε να χρησιμοποιήσετε άλλες τελεστές σύγκρισης, όπως μεγαλύτερο από (>) ή μικρότερη από (<). Για παράδειγμα, όπου [Price] > 100.

Χρησιμοποιήστε τον όρο WHERE για να συνδυάσετε τα αρχεία προέλευσης δεδομένων

Μερικές φορές ίσως θέλετε να συνδυάσετε τα αρχεία προέλευσης δεδομένων βάσει των πεδίων τα οποία έχουν δεδομένα που συμφωνούν, αλλά έχουν διαφορετικούς τύπους δεδομένων. Για παράδειγμα, ένα πεδίο σε έναν πίνακα μπορεί να έχει έναν τύπο δεδομένων αριθμού και θέλετε να συγκρίνετε το συγκεκριμένο πεδίο με ένα πεδίο άλλου πίνακα που έχει τύπο δεδομένων κειμένου.

Δεν είναι δυνατό να δημιουργήσετε ένα σύνδεσμο μεταξύ των πεδίων που έχουν διαφορετικούς τύπους δεδομένων. Για να συνδυάσετε δεδομένα από δύο προελεύσεις δεδομένων βάσει τιμών σε πεδία που έχουν διαφορετικούς τύπους δεδομένων, μπορείτε να δημιουργήσετε έναν όρο WHERE ο οποίος χρησιμοποιεί ένα πεδίο ως κριτήριο για άλλο πεδίο, χρησιμοποιώντας τη λέξη-κλειδί LIKE.

Για παράδειγμα, ας υποθέσουμε ότι θέλετε να χρησιμοποιήσετε δεδομένα από τον πίνακα1 και πίνακα2, αλλά μόνο όταν τα δεδομένα στο πεδίο1 (ένα πεδίο κειμένου στον πίνακα1) συμφωνούν με τα δεδομένα στο πεδίο2 (ένα αριθμητικό πεδίο στον πίνακα2). Ο όρος WHERE θα μοιάζει ως εξής:

WHERE field1 LIKE field2

Για περισσότερες πληροφορίες σχετικά με τον τρόπο για να δημιουργήσετε κριτήρια για να χρησιμοποιήσετε σε μια πρόταση WHERE, ανατρέξτε στο άρθρο παραδείγματα κριτηρίων ερωτήματος.

Αρχή της σελίδας

ΣΗΜΕΙΩΣΗ : Αποποίηση ευθυνών αυτόματης μετάφρασης: Αυτό το άρθρο έχει μεταφραστεί από ένα σύστημα υπολογιστή χωρίς ανθρώπινη παρέμβαση. Η Microsoft προσφέρει αυτές τις αυτόματες μεταφράσεις για να βοηθά τους μη αγγλόφωνους χρήστες να απολαμβάνουν περιεχόμενο σχετικά με προϊόντα, υπηρεσίες και τεχνολογίες της Microsoft. Το άρθρο προέρχεται από μηχανική μετάφραση, συνεπώς ενδέχεται να περιέχει λάθη λεξιλογίου, σύνταξης ή γραμματικής.

Αναπτύξτε τις δεξιότητές σας
Εξερευνήστε το περιεχόμενο της εκπαίδευσης
Αποκτήστε πρώτοι τις νέες δυνατότητες
Γίνετε μέλος του Office Insider

Σας βοήθησαν αυτές οι πληροφορίες;

Σας ευχαριστούμε για τα σχόλιά σας!

Σας ευχαριστούμε για τα σχόλιά σας! Φαίνεται ότι μπορεί να είναι χρήσιμο να συνδεθείτε με έναν από τους συνεργάτες υποστήριξης του Office.

×