Πώς να δημιουργήσετε ένα ερώτημα συνόλων που εκτελείται σε Microsoft Access

Μεταφράσεις άρθρων Μεταφράσεις άρθρων
Αναγν. άρθρου: 290136 - Δείτε τα προϊόντα στα οποία αναφέρεται το συγκεκριμένο άρθρο.
Για προχωρημένους: Απαιτεί εμπειρογνωμόνων κωδικοποίησης, διαλειτουργικότητας και δεξιότητες πολλών χρηστών.

Αυτό το άρθρο ισχύει για ένα αρχείο βάσης δεδομένων (.mdb) της Microsoft Access ή σε ένα αρχείο βάσης δεδομένων (.accdb) της Microsoft Access.Για μια έκδοση της Microsoft Access 2000 αυτού του άρθρου, ανατρέξτε στο θέμα 208714.
Για μια έκδοση αυτού του άρθρου Microsoft Access 97, ανατρέξτε στο θέμα 138911.
Ανάπτυξη όλων | Σύμπτυξη όλων

Σε αυτήν τη σελίδα

Περίληψη

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

Σημείωση Μπορείτε να δείτε μια επίδειξη τεχνική που χρησιμοποιείται σε αυτό το άρθρο στο δείγμα αρχείου Qrysmp00.exe. Για πληροφορίες σχετικά με τον τρόπο απόκτησης αυτού του δείγματος αρχείου, ανατρέξτε στο ακόλουθο άρθρο της Microsoft (Knowledge Base):
207626 ACC2000: Access 2000 δείγματα ερωτημάτων είναι διαθέσιμη στο Κέντρο λήψης

Περισσότερες πληροφορίες

Η μέθοδος 1

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

Το ακόλουθο δείγμα χρησιμοποιεί ερώτημα το Παραγγελίες πίνακα από το δείγμα βάσης δεδομένων Northwind για να δημιουργήσετε ένα τρέχον άθροισμα τα έξοδα μεταφοράς για κάθε μήνα 1997. Το δείγμα δεδομένων περιορίζεται σε ένα έτος για λόγους επιδόσεων. Επειδή το DSum συνάρτηση εκτελείται μία φορά για κάθε εγγραφή στο ερώτημα, ενδέχεται να διαρκέσει μερικά δευτερόλεπτα (ανάλογα με την ταχύτητα του υπολογιστή σας) για το ερώτημα για να ολοκληρώσετε την επεξεργασία. Για να δημιουργήσετε και να εκτελέσετε αυτό το ερώτημα, ακολουθήστε αυτά τα βήματα:
  1. Ανοίξτε το δείγμα βάσης δεδομένων Northwind.
  2. Δημιουργήστε ένα νέο ερώτημα επιλογής και να προσθέσετε τον πίνακα "Παραγγελίες".
  3. Από το Προβολή μενού, κάντε κλικ στο κουμπί Σύνολα.

    Σημείωση Στην Access 2007, κάντε κλικ στο κουμπί Σύνολα με το Εμφάνιση/απόκρυψη ομάδα για το Σχεδίαση στην καρτέλα.
  4. Στην πρώτη στήλη στο πλέγμα σχεδίασης ερωτήματος, πληκτρολογήστε την παρακάτω παράσταση στο του Το πεδίο πλαίσιο και να κάνετε τις παρακάτω επιλογές το Σύνολο, Ταξινόμηση, και Εμφάνιση πλαίσια:
       Field: AYear: DatePart("yyyy",[OrderDate])
       Total: Group By
       Sort: Ascending
       Show: Yes
    						
    Η έκφραση της Το πεδίο πλαίσιο εμφανίζει και ταξινομεί το έτος τμήμα του πεδίου "ΗμερΠαραγγελίας".
  5. Στη δεύτερη στήλη του πλέγματος σχεδίασης ερωτήματος, πληκτρολογήστε την παρακάτω παράσταση στο του Το πεδίο πλαίσιο και να κάνετε τις παρακάτω επιλογές το Σύνολο, Ταξινόμηση, και Εμφάνιση πλαίσια:
       Field: AMonth: DatePart("m",[OrderDate])
       Total: Group By
       Sort: Ascending
       Show: Yes
    						
    Η έκφραση της Το πεδίο πλαίσιο ταξινομεί και εμφανίζει το τμήμα μήνα του πεδίου "ημερομηνία παραγγελίας" ως μια ακέραια τιμή από 1 έως 12.
  6. Στην τρίτη στήλη του πλέγματος σχεδίασης ερωτήματος, πληκτρολογήστε την παρακάτω παράσταση στο του Το πεδίο πλαίσιο και να κάνετε τις παρακάτω επιλογές το Σύνολο και Εμφάνιση πλαίσια.

    ΣΗΜΕΊΩΣΗ: Στο παρακάτω παράδειγμα, ένα χαρακτήρα υπογράμμισης (_) στο τέλος μιας γραμμής χρησιμοποιείται ως χαρακτήρας συνέχισης γραμμής. Καταργήστε το χαρακτήρα υπογράμμισης από το τέλος της γραμμής όταν πάλι αυτό το παράδειγμα.
       Field: RunTot: DSum("Freight","Orders","DatePart('m', _
              [OrderDate])<=" & [AMonth] & " And  DatePart('yyyy', _
              [OrderDate])<=" & [AYear] & "")
       Total: Expression
       Show: Yes
    						
    Η έκφραση της Το πεδίο πλαίσιο χρήσεις της DSumσυνάρτηση () για να αθροίσετε το πεδίο Freight όταν οι τιμές της AMonth και τα πεδία AYear είναι μικρότερη ή ίση με την τρέχουσα εγγραφή που επεξεργάζεται το ερώτημα.
  7. Στην τέταρτη στήλη του πλέγματος σχεδίασης ερωτήματος, πληκτρολογήστε την παρακάτω παράσταση στο του Το πεδίο πλαίσιο και να κάνετε τις παρακάτω επιλογές το Σύνολο, Ταξινόμηση, και Εμφάνιση πλαίσια:
       Field: FDate: Format([OrderDate],"mmm")
       Total: Group By
       Sort: Ascending
       Show: Yes
    						
    Η έκφραση της Το πεδίο πλαίσιο εμφανίζει κάθε μήνα σε μορφή κειμένου, η μια Ιαν, Φεβ, Μαρ, και ούτω καθεξής.
  8. Στην πέμπτη στήλη του πλέγματος σχεδίασης ερωτήματος, πληκτρολογήστε την παρακάτω παράσταση στο του Το πεδίο πλαίσιο και να κάνετε τις παρακάτω επιλογές το Σύνολο, Κριτήρια, και Εμφάνιση πλαίσια:
       Field: DatePart("yyyy",[OrderDate])
       Total: Where
       Criteria: 1997
       Show: No
    						
    Η έκφραση της Το πεδίο πλαίσιο φίλτρα recordset το ερώτημα για να συμπεριλάβετε δεδομένα από το 1997 μόνο.
  9. Εκτελέστε το ερώτημα. Σημειώστε ότι το πεδίο "RunTot" εμφανίζει τις παρακάτω εγγραφές με το τρέχον άθροισμα:
       AYear    AMonth     RunTot       FDate
       --------------------------------------
       1997     1          2238.98      Jan
       1997     2          3840.43      Feb
       1997     3          5729.24      Mar
       1997     4          8668.34      Apr
       1997     5          12129.74     May
       1997     6          13982.39     Jun
       1997     7          17729.29     Jul
       1997     8          22204.73     Aug
       1997     9          26565.26     Sep
       1997     10         32031.38     Oct
       1997     11         36192.09     Nov
       1997     12         42748.64     Dec
    					

Μέθοδος 2

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

Το παρακάτω ερώτημα δείγμα χρησιμοποιεί τον πίνακα Orders σε άθροισμα έξοδα μεταφοράς ανά υπάλληλος καθώς και για να υπολογίσετε ένα τρέχον άθροισμα του φορτίου. Για να δημιουργήσετε και εκτέλεση του ερωτήματος, ακολουθήστε τα εξής βήματα:
  1. Ανοίξτε το δείγμα βάσης δεδομένων Northwind.mdb.
  2. Δημιουργήστε ένα νέο ερώτημα επιλογής και να προσθέσετε τον πίνακα "Παραγγελίες".
  3. Από το Προβολή μενού, κάντε κλικ στο κουμπί Σύνολα.

    Σημείωση Στην Access 2007, κάντε κλικ στο κουμπί Σύνολα με το Εμφάνιση/απόκρυψη ομάδα για το Σχεδίαση στην καρτέλα.
  4. Στην πρώτη στήλη στο πλέγμα σχεδίασης ερωτήματος, προσθέστε το παρακάτω πεδίο για το Το πεδίο πλαίσιο και να κάνετε τις παρακάτω επιλογές το Σύνολο και Εμφάνιση πλαίσια:
       Field: EmpAlias: EmployeeID
       Total: Group By
       Show: Yes
    						
    Αυτό το πεδίο ομαδοποιεί δεδομένα από το πεδίο "ΚωδΥπαλλήλου".
  5. Στη δεύτερη στήλη του πλέγματος σχεδίασης ερωτήματος, προσθέστε το παρακάτω πεδίο για το Το πεδίο πλαίσιο και να κάνετε τις παρακάτω επιλογές το Σύνολο και Εμφάνιση πλαίσια:
       Field: Freight
       Total: Sum
       Show: Yes
    						
    Αυτό το πεδίο αθροίζει τα δεδομένα του φορτίου.
  6. Στην τρίτη στήλη του πλέγματος σχεδίασης ερωτήματος, πληκτρολογήστε την παρακάτω παράσταση στο του Το πεδίο πλαίσιο και να κάνετε τις παρακάτω επιλογές το Σύνολο και Εμφάνιση πλαίσια.

    ΣΗΜΕΊΩΣΗ: Στο παρακάτω παράδειγμα, ένα χαρακτήρα υπογράμμισης (_) στο τέλος μιας γραμμής χρησιμοποιείται ως χαρακτήρας συνέχισης γραμμής. Καταργήστε το χαρακτήρα υπογράμμισης από το τέλος της γραμμής όταν πάλι αυτό το παράδειγμα.
       Field: RunTot: Format(DSum("Freight","Orders","[EmployeeID]<=" _
              & [EmpAlias] & ""),"$0,000.00")
       Total: Expression
       Show: Yes
    						
    Η έκφραση της Το πεδίο πλαίσιο χρησιμοποιεί ένα DSumσυνάρτηση () για να αθροίσετε το πεδίο Freight όταν το πεδίο "ΚωδΥπαλλήλου" είναι μικρότερη ή ίση με την τρέχουσα EmpAlias και, στη συνέχεια, διαμορφώνει το πεδίο σε δολάρια.
  7. Εκτελέστε το ερώτημα. Σημειώστε ότι το πεδίο "RunTot" εμφανίζει τις παρακάτω εγγραφές με το τρέχον άθροισμα:
       Employee              SumOfFreight     RunTot
       -------------------------------------------------
       Davolio, Nancy        $8,836.64        $8,836.64
       Fuller, Andrew        $8,696.41        $17,533.05
       Leverling,Janet       $10,884.74       $28,417.79
       Peacock, Margaret     $11,346.14       $39,763.93
       Buchanan, Steven      $3,918.71        $43,682.64
       Suyama, Michael       $3,780.47        $47,463.11
       King, Robert          $6,665.44        $54,128.55
       Callahan, Laura       $7,487.88        $61,616.43
       Dodsworth, Anne       $3,326.26        $64,942.69
    					

Ιδιότητες

Αναγν. άρθρου: 290136 - Τελευταία αναθεώρηση: Κυριακή, 29 Μαΐου 2011 - Αναθεώρηση: 8.0
Οι πληροφορίες σε αυτό το άρθρο ισχύουν για:
  • Microsoft Office Access 2007
  • Microsoft Office Access 2003
  • Microsoft Access 2002 Standard Edition
Λέξεις-κλειδιά: 
kbinfo kbexpertiseinter kbhowto kbmt KB290136 KbMtel
Μηχανικά μεταφρασμένο
ΣΗΜΑΝΤΙΚΟ: Αυτό το άρθρο είναι προϊόν λογισμικού μηχανικής μετάφρασης της Microsoft και όχι ανθρώπινης μετάφρασης. Η Microsoft σάς προσφέρει άρθρα που είναι προϊόντα ανθρώπινης αλλά και μηχανικής μετάφρασης έτσι ώστε να έχετε πρόσβαση σε όλα τα άρθρα της Γνωσιακής Βάσης μας στη δική σας γλώσσα. Ωστόσο, ένα άρθρο που έχει προκύψει από μηχανική μετάφραση δεν είναι πάντα άριστης ποιότητας. Ενδέχεται να περιέχει λεξιλογικά, συντακτικά ή γραμματικά λάθη, όπως ακριβώς τα λάθη που θα έκανε ένας μη φυσικός ομιλητής επιχειρώντας να μιλήσει τη γλώσσα σας. Η Microsoft δεν φέρει καμία ευθύνη για τυχόν ανακρίβειες, σφάλματα ή ζημίες που προκύψουν λόγω τυχόν παρερμηνειών στη μετάφραση του περιεχομένου ή χρήσης του από τους πελάτες της. Επίσης, η Microsoft πραγματοποιεί συχνά ενημερώσεις στο λογισμικό μηχανικής μετάφρασης.
Η αγγλική έκδοση αυτού του άρθρου είναι η ακόλουθη:290136

Αποστολή σχολίων

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com