Ανανέωση ιστοσελίδας

Access - Ερωτήσεις / Απαντήσεις Access + VBA... Εδώ δεν υπάρχουν όρια!

Απάντηση στο θέμα

 

Εργαλεία Θεμάτων Τρόποι εμφάνισης
  #1  
Παλιά 19-02-11, 18:45
Όνομα: ΔΗΜΗΤΡΗΣ
Έκδοση λογισμικού Office: Ms-Office 2007
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 19-02-2011
Μηνύματα: 97
Προεπιλογή Ταξινόμηση

Καλησπέρα.Φτιάχνω μια βάση δεδομένων σε acces και αντιμετωπίζω το εξής πρόβλημα.
Το προγραμμα αφορα βαθμολογίες πρωταθλημάτων.
1)Θέλω να φτιάχω ένα ερώτημα όπου να του δείνω το ονομα του πρωταθλήματος και να μου εμφανίζει εναν πίνακα με τις ομάδες καθώς και την θέση τους με ταξινόμηση βάση των βαθμών τους.
.Π.χ
Ελλάδα
Παοκ 1
ΠΑΟ 2
ΑΕΚ 3
Τον αριθμό 1,2,3 (θέση) θέλω να μου τον δημιουργεί το ερώτημα σε νεο πεδιο.
Απάντηση με παράθεση
  #2  
Παλιά 19-02-11, 23:08
Το avatar του χρήστη Meteora
Συντονιστής
Όνομα: Νίκος
Έκδοση λογισμικού Office: Ms-Office 2007
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 28-12-2008
Περιοχή: Θεσσαλονίκη
Μηνύματα: 1.033
Προεπιλογή

Καλησπέρα ...
Αγαπητέ Δημήτρη, καλώς ήλθες στη παρέα μας.
Ανέβασε στο Forum τη μικρή αυτή εφαρμογή (πίνακες, φόρμες, ...) για να δούμε την δομή της και να σε βοηθήσουμε !

Με εκτίμηση
Νίκος Δ.
Απάντηση με παράθεση
  #3  
Παλιά 20-02-11, 14:06
Όνομα: ΔΗΜΗΤΡΗΣ
Έκδοση λογισμικού Office: Ms-Office 2007
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 19-02-2011
Μηνύματα: 97
Προεπιλογή ταξινομηση

Ανεβαζω ενα δείγμα απο την βάση και στο ερώτημα βαθμολογια γράφω τι θέλω να κάνει.
Συνημμένα Αρχεία
Τύπος Αρχείου: accdb BATHMOLOGIA.accdb (344,0 KB, 21 εμφανίσεις)
Απάντηση με παράθεση
  #4  
Παλιά 20-02-11, 17:26
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.674
Προεπιλογή

Καλησπέρα στην παρέα

Δημήτρη, στη βάση δεδομένων που επισυνάπτω έχω προσθέσει δύο ερωτήματα (qryHelp, qryBathmologia). To «qryHelp» είναι βοηθητικό. Το «qryBathmologia» περιέχει τα στοιχεία που θέλεις μαζί με τη θέση των ομάδων.
Δεν είμαι σίγουρος ότι αυτό θέλεις, αφού δε μας εξήγησες τι ακριβώς είναι τα πεδία W, D, L και τι θα γίνεται για τις ομάδες που ισοβαθμούν.
Για την ισοβαθμία έδωσα την ακόλουθη λύση: Οι ομάδες που ισοβαθμούν βρίσκονται στην ίδια θέση και η επόμενη (και όσες ισοβαθμούν με αυτήν) βρίσκεται στη θέση που καθορίζει ο αύξων αριθμός της.
Για παράδειγμα αν μετά την πρώτη ομάδα ακολουθούν 3 που ισοβαθμούν η θέση τους θα είναι 2, που σημαίνει 3 ομάδες ισοβαθμούν στη δεύτερη θέση. Η επόμενη θα έχει θέση 5, αφού προηγούνται 4 ομάδες.

Φιλικά/Γιώργος
Συνημμένα Αρχεία
Τύπος Αρχείου: accdb BATHMOLOGIA.accdb (348,0 KB, 24 εμφανίσεις)
Απάντηση με παράθεση
  #5  
Παλιά 21-02-11, 03:27
Όνομα: ΔΗΜΗΤΡΗΣ
Έκδοση λογισμικού Office: Ms-Office 2007
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 19-02-2011
Μηνύματα: 97
Προεπιλογή ΤΑΞΙΝΟΜΗΣΗ

Φίλε είσαι πολύ καλός σε ευχαριστω για την απάντηση.
Αυτό θέλω να κάνει απλά το W=νίκες ομάδων.
γίνεται να βάλουμε και δεύτερο κριτηριο το D=ισοπαλίες που πέτυχαν ώστε να μην είναι τόσες πολλές ομάδες στην ίδια βαθμολογική θέση.
Απάντηση με παράθεση
  #6  
Παλιά 21-02-11, 17:46
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.674
Προεπιλογή

Καλησπέρα στην παρέα

Δημήτρη, στη νέα βάση που επισυνάπτω, πρόσθεσα και το κριτήριο της ισοπαλίας. Με τα δεδομένα που έχεις το ερώτημα «qryBathmologia» δίνει σωστά αποτελέσματα. Τα κριτήρια έχουν γίνει όμως πολύπλοκα με αποτέλεσμα το ερώτημα να εκτελείται κάπως αργά. Πιθανόν επίσης , λόγω της πολυπλοκότητας, να μου διέφυγε κάποια περίπτωση με αποτέλεσμα όταν προσθέσεις και άλλα δεδομένα να πάρεις λάθος αποτέλεσμα
Η βάση δεδομένων περιέχει και το ερώτημα «qryOmades», που δίνει τις ομάδες που αγωνίστηκαν. Είναι 33 ενώ στη βαθμολογία υπάρχουν μόνο 23.
Κατά τη γνώμη μου, θα πρέπει να κάνεις στη βάση τις ακόλουθες βελτιώσεις.
1) Να προσθέσεις ένα πίνακα με τις ομάδες και στον πίνακα των αποτελεσμάτων να τις επιλέγεις από ένα πτυσσόμενο πλαίσιο.
2) Να δώσεις στα πεδία ονόματα που να διευκρινίζουν τι στοιχεία αποθηκεύουν.
3)Είναι πιο απλό η κατάταξη των ομάδων να γίνεται με τη βαθμολογία τους. Αν δεν κάνω λάθος οι βαθμοί είναι 3 για νίκη και 1 για ισοπαλία.

Φιλικά/Γιώργος
Συνημμένα Αρχεία
Τύπος Αρχείου: mdb BathmologiaOmadwn.mdb (260,0 KB, 31 εμφανίσεις)
Απάντηση με παράθεση
  #7  
Παλιά 22-02-11, 01:33
Όνομα: ΔΗΜΗΤΡΗΣ
Έκδοση λογισμικού Office: Ms-Office 2007
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 19-02-2011
Μηνύματα: 97
Προεπιλογή ταξινομηση

Φίλε πρώτα απο όλα σε ευχαριστώ για την αμεσότητα και το ενδιαφέρον σου.
Απλά το πρόβλημα μετά είναι ότι αν βάλω να φτιάξει βαθμολογία στο μπάσκετ η νίκη μετράει 2 ποντους ενώ στο ποδόσφαιρο 3 , και η ήττα στο μπάσκετ ενα ποντο.
Αυτό που ΄μου ανέβασες είναι πολύ καλό και σε ευχαριστώ για αυτο.
Δεν κατάλαβα πολύ καλά τι εννοείς.
Την ενημέρωση των αποτελεσμάτων την κάνω μέσα απο ένα εξελ αρχείο.
Στην κανονική βάση το έχω έτσι.
Θά είναι με αυτο τον τρόπο πιο γρήγορο το΄ερώτημα.
Μήπως είναι καλύτερα να εξάγω σε νέο πίνακα την βαθμολογία και μετά να φτιάξω ερώτημα για την ταξινόμηση.
Για να μην είναι ερώτημα υπολογισμού σε ερώτημα υπολογισμού?
Μπορεί να γίνει αυτό.Και αν ναι πώς.
Σε ευχαριστώ εκ των προτέρων.
Απάντηση με παράθεση
  #8  
Παλιά 22-02-11, 11:52
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.674
Προεπιλογή

Καλημέρα

Δημήτρη, εννοώ ότι ο τρόπος που δημιουργείς το ερώτημα «ΒΑΘΜΟΛΟΓΙΑ» δεν είναι σωστός αφού δεν περιλαμβάνει 10 ομάδες (ΑΕΚ,ΑΣΤΕΡΑΣ ΤΡΙΠΟΛΗΣ, ΑΤΡΟΜΗΤΟΣ, ΛΑΡΙΣΑ, ΟΛΥΜΠΙΑΚΟΣ, ΑΙΓΑΛΕΩ, ΑΝΑΓΕΝΝΗΣΗ ΚΑΡΔΙΤΣΑΣ, ΕΘΝΙΚΟΣ, ΠΑΝΣΕΡΡΑΙΚΟΣ) που έχουν αγωνιστεί (περιλαμβάνονται στον πίνακα ΑΠΟΤΕΛΕΣΜΑΤΑ).
Η βάση δεδομένων, που επισυνάπτω, λύνει το παραπάνω πρόβλημα και ταξινομεί πολύ πιο εύκολα τις ομάδες με βάση τη βαθμολογία τους. Περιλαμβάνει:
1) Ένα ερώτημα ένωσης «qryOmades» στο οποίο κάθε γραμμή περιέχει τα στοιχεία μιας μόνο ομάδας, για κάθε αγώνα στον οποίο συμμετείχε. Δηλαδή για κάθε γραμμή του πίνακα «ΑΠΟΤΕΛΕΣΜΑΤΑ» στην οποία υπάρχουν δύο ομάδες δημιουργεί δύο γραμμές (μία για κάθε ομάδα).
Κώδικας:
Select Dior, Home as OMADA,IIf([F]>[A],3,IIf([F]=[A],1,0)) AS  Bathmos, iif([F]>[A],1,0) as W, 
 iif([F]=[A],1,0) as D,iif([F]<[A],1,0) as L from ΑΠΟΤΕΛΕΣΜΑΤΑ
UNION ALL
 Select Dior, Away as OMADA,iif([F]<[A],3,iif([F]=[A],1,0)) as Bathmos,
 iif([F]<[A],1,0) as W,  iif([F]=[A],1,0) as D,iif([F]>[A],1,0) as L  from ΑΠΟΤΕΛΕΣΜΑΤΑ
ORDER BY 1, 2;
2)Το συγκεντρωτικό ερώτημα «qryBathmologia», που βασίζεται στο ερώτημα ένωσης «qryOmades» και δίνει τα συγκεντρωτικά στοιχεία για κάθε ομάδα.
Κώδικας:
SELECT qryOmades.Dior, qryOmades.OMADA, Sum(qryOmades.W) AS Nikes, Sum(qryOmades.D) AS Isopalies, 
Sum(qryOmades.L) AS Httes, Sum(qryOmades.Bathmos) AS Bathmoi
FROM qryOmades
GROUP BY qryOmades.Dior, qryOmades.OMADA
ORDER BY qryOmades.Dior, Sum(qryOmades.W) DESC , Sum(qryOmades.D) DESC;
3) Το ερώτημα «qryKatataxi», που βασίζεται στο ερώτημα «qryBathmologia», που πραγματοποιεί την κατάταξη με βάση τη βαθμολογία.
Κώδικας:
SELECT qryBathmologia.Dior, qryBathmologia.OMADA, qryBathmologia.Nikes, 
qryBathmologia.Isopalies, qryBathmologia.Httes, qryBathmologia.Bathmoi, 
(Select count(*)
 From qryBathmologia as P Where qryBathmologia![Dior]=P![Dior] and
 iif( qryBathmologia![OMADA]=P![OMADA],qryBathmologia![Bathmoi]<=P![Bathmoi],
qryBathmologia![Bathmoi]<P![Bathmoi])) AS Katataxi
FROM qryBathmologia;
Η βαθμολογία στα διάφορα αθλήματα δεν αποτελεί σοβαρό πρόβλημα. Μπορεί να λυθεί προσθέτοντας μια απλή πρόταση Where σε κάθε υποερώτημα στο ερώτημα ένωσης «qryOmades» που θα περιορίζει τις εγγραφές σε κάθε άθλημα (πχ where [Dior]=’ΕΛ3’ , αν ΕΛ3=μπάσκετ) και ορίζοντας κατάλληλα τη βαθμολογία (πχ IIf([F]>[A],3,IIf([F]=[A],2,1)) AS Bathmos).
Αν δεν υιοθετήσεις την παραπάνω πρόταση, η λύση «να εξάγω σε νέο πίνακα την βαθμολογία και μετά να φτιάξω ερώτημα για την ταξινόμηση», πιστεύω ότι δεν είναι καλύτερη, γιατί μπορεί να βελτιώσει λίγο την ταχύτητα θα κάνει όμως πιο πολύπλοκη τη βάση (θα τις προσθέσει ένα πίνακα και ένα ερώτημα που θα διαγράφει τα δεδομένα του πίνακα για να γεμίσει με νέα από ένα ερώτημα προσάρτησης).

Φιλικά/Γιώργος
Συνημμένα Αρχεία
Τύπος Αρχείου: mdb BathmologiaOmadwn2.mdb (276,0 KB, 68 εμφανίσεις)
Απάντηση με παράθεση
  #9  
Παλιά 22-02-11, 12:19
Όνομα: ΔΗΜΗΤΡΗΣ
Έκδοση λογισμικού Office: Ms-Office 2007
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 19-02-2011
Μηνύματα: 97
Thumbs up ταξινομηση

Σε ευχαριστώ πολύ θα το κάνω έτσι όπως μου έδειξες.
Να είσαι πάντα καλά και να βοηθάς εμάς τους αδαείς.
Απάντηση με παράθεση
Απάντηση στο θέμα


Δικαιώματα - Επιλογές
Δε μπορείτε να δημοσιεύσετε νέα μηνύματα
Δε μπορείτε να δημοσιεύσετε απαντήσεις
Δεν μπορείτε να επισυνάψετε αρχεία
Δεν μπορείτε να επεξεργαστείτε τα μηνύματα σας

Ο κώδικας ΒΒ είναι σε λειτουργία
Τα Smilies είναι σε λειτουργία
Ο κώδικας [IMG] είναι σε λειτουργία
Ο κώδικας HTML είναι εκτός λειτουργίας
Trackbacks are εκτός λειτουργίας
Pingbacks are εκτός λειτουργίας
Refbacks are εκτός λειτουργίας


Παρόμοια Θέματα

Θέμα Δημιουργός Forum Απαντήσεις Τελευταίο Μήνυμα
[Μορφοποίηση] Ταξινόμηση xristos Excel - Ερωτήσεις / Απαντήσεις 2 23-08-16 17:38
[Γενικά] Ταξινόμηση comsup Excel - Ερωτήσεις / Απαντήσεις 8 13-04-13 18:25
[Γενικά] Ταξινόμηση comsup Excel - Ερωτήσεις / Απαντήσεις 1 16-03-13 00:51
[ Φόρμες ] Ταξινόμηση alatis Access - Ερωτήσεις / Απαντήσεις 2 03-10-10 20:26
[Συναρτήσεις] Ταξινόμηση skantzo Excel - Ερωτήσεις / Απαντήσεις 11 26-09-10 23:39


Η ώρα είναι 19:30.