SQL της Access: βασικές έννοιες, λεξιλόγιο και σύνταξη

SQL της Access: βασικές έννοιες, λεξιλόγιο και σύνταξη

Σημείωση: Θέλουμε να σας παρέχουμε το πιο πρόσφατο περιεχόμενο βοήθειας στη γλώσσα σας όσο πιο σύντομα γίνεται. Αυτή η σελίδα έχω μεταφραστεί μέσω αυτοματοποιημένης διαδικασίας και ενδεχομένως να περιέχει γραμματικά λάθη και ανακρίβειες. Ο σκοπός μας είναι αυτό το περιεχόμενο να σας φανεί χρήσιμο. Μπορείτε να μας ενημερώσετε στο κάτω μέρος αυτής της σελίδας εάν οι πληροφορίες σάς φάνηκαν χρήσιμες; Εδώ θα βρείτε το άρθρο στα Αγγλικά, για να το συμβουλεύεστε εύκολα.

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

Κατανόηση πώς λειτουργεί η SQL μπορεί να σας βοηθήσει να δημιουργήσετε ερωτήματα καλύτερα και μπορεί να σας διευκολύνει να κατανοήσετε τον τρόπο για να διορθώσετε ένα ερώτημα που δεν επιστρέφει τα αποτελέσματα που θέλετε.

Αυτό είναι ένα σύνολο από άρθρα σχετικά με την Access SQL. Σε αυτό το άρθρο περιγράφει τη βασική χρήση του SQL για να επιλέξετε δεδομένα και χρησιμοποιεί παραδείγματα για την απεικόνιση σύνταξη SQL.

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

Τι είναι το SQL;

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

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

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

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

Τι είναι το SQL;

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

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

Για παράδειγμα, μια απλή πρόταση SQL που ανακτά μια λίστα με τα επώνυμα των επαφών των οποίων όνομα είναι Mary μπορεί να μοιάζει με αυτό:

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

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

Ορισμός

Παράδειγμα

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

Ονοματικές

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

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

τελεστής

Ρηματικές ή επίρρημα

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

AS

σταθερά

Ονοματικές

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

42

παράσταση

επίθετο

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

>= Προϊόντα.[Τιμή μονάδας]

Επάνω μέρος της σελίδας

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

Μια πρόταση 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 εμφανίζεται πάντα μπροστά από τον όρο FROM σε μια πρόταση SELECT.

ΑΠΌ τον όρο FROM

FROM Contacts

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

Ένας όρος From παραθέτει τα πεδία για να είναι επιλεγμένο.

Ο όρος WHERE

WHERE City="Seattle"

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

Σημείωση: Σε αντίθεση με ΕΠΙΛΟΓΉ από και ΠΡΟΣ όρους, τον όρο WHERE αποτελεί δεν απαιτείται στοιχείο μια πρόταση SELECT.

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

Επάνω μέρος της σελίδας

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

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

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

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

ORDER BY Company DESC, [E-mail Address]

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

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

Επάνω μέρος της σελίδας

Εργασία με συνοπτικά δεδομένα: ΟΜΑΔΟΠΟΊΗΣΗ κατά και 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 σάς επιτρέπει να συνδυάσετε δύο προτάσεις SELECT σε μία. Οι προτάσεις SELECT που μπορείτε να συνδυάσετε πρέπει να έχουν τον ίδιο αριθμό πεδίων εξόδου, με την ίδια σειρά και με τους ίδιους ή συμβατούς τύπους. Όταν εκτελείτε το ερώτημα, δεδομένα από κάθε σύνολο αντίστοιχα πεδία συνδυάζονται σε ένα πεδίο εξόδου, ώστε το αποτέλεσμα του ερωτήματος έχει τον ίδιο αριθμό πεδίων με κάθε μία από τις προτάσεις select.

Σημείωση: Για τους σκοπούς ενός ερωτήματος συνένωσης, οι τύποι δεδομένων "Αριθμός" και "Κείμενο" είναι συμβατοί.

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

Η βασική σύνταξη 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, χρησιμοποιώντας τον τελεστή ΈΝΩΣΗΣ, ανατρέξτε στο θέμα συνδυασμός των αποτελεσμάτων πολλών ερωτημάτων επιλογής χρησιμοποιώντας ένα ερώτημα συνένωσης.

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

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

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

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

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

×