lammis Δημοσ. 22 Φεβρουαρίου 2010 Δημοσ. 22 Φεβρουαρίου 2010 Έχω φτιάξει δυο πίνακες, ο ένας είναι ΕΣΟΔΑ με πεδία (ΑΙΤΙΟΛΟΓΙΑ - ΠΟΣΟ) και ο άλλος ΕΞΟΔΑ (ΑΙΤΙΟΛΟΓΙΑ - ΠΟΣΟ). Το ζητούμενο είναι πως να δημιουργήσω ένα ερώτημα (ΕΣΟΔΑ-ΕΞΟΔΑ) που να περιέχει τα εξής πεδία (ΕΣΟΔΑ.ΑΙΤΙΟΛΟΓΙΑ - ΕΣΟΔΑ.ΠΟΣΟ - ΕΞΟΔΑ.ΑΙΤΙΟΛΟΓΙΑ - ΕΞΟΔΑ.ΠΟΣΟ - ΤΑΜΕΙΟ) Παραθέτω τον τύπο sql που έχω κάνει μέχρι τώρα SELECT ΕΣΟΔΑ.ΑΙΤΙΟΛΟΓΙΑ, Sum(ΕΣΟΔΑ.ΠΟΣΟ) AS ΕΣΟΔΑΠΟΣΟ, ΕΞΟΔΑ.ΑΙΤΙΟΛΟΓΙΑ, Sum(ΕΞΟΔΑ.ΠΟΣΟ) AS ΕΞΟΔΑΠΟΣΟ, TAMEIO AS Eκφρ1 FROM ΕΣΟΔΑ, ΕΞΟΔΑ GROUP BY ΕΣΟΔΑ.ΑΙΤΙΟΛΟΓΙΑ, ΕΞΟΔΑ.ΑΙΤΙΟΛΟΓΙΑ; έχω κολλήσει με το πεδίο ΤΑΜΕΙΟ που θέλω να περιλαμβάνει μια αφαίρεση των συνόλων (ΕΣΟΔΑΠΟΣΟ)-( ΕΞΟΔΑΠΟΣΟ) Ευχαριστώ
oksosaa Δημοσ. 22 Φεβρουαρίου 2010 Δημοσ. 22 Φεβρουαρίου 2010 Στον πίνακα ΕΣΟΔΑ-ΑΙΤΙΟΛΟΓΙΑ τα ΕΣΟΔΑ θα είναι πεδίο? Δεν κατάλαβα
lammis Δημοσ. 22 Φεβρουαρίου 2010 Μέλος Δημοσ. 22 Φεβρουαρίου 2010 Στον πίνακα ΕΣΟΔΑ-ΑΙΤΙΟΛΟΓΙΑτα ΕΣΟΔΑ θα είναι πεδίο? Δεν κατάλαβα Επισυνάπτω το αρχείο για περαιτέρω κατανόηση ΕΣΟΔΑ-ΕΞΟΔΑ.zip
_tasos Δημοσ. 22 Φεβρουαρίου 2010 Δημοσ. 22 Φεβρουαρίου 2010 Δεν καταλαβαίνω τι θέλεις να δείξεις με το ερώτημα. Υποψιάζομαι ότι πρέπει να κάνεις ένα join κάπου. Θέλεις να εξηγήσεις τι ακριβώς έχουν οι δύο πίνακες και τι θέλεις να πετύχεις με το ερώτημα;
lammis Δημοσ. 22 Φεβρουαρίου 2010 Μέλος Δημοσ. 22 Φεβρουαρίου 2010 Φιλέ Τάσο καλησπέρα θέλω να κάνω αυτό το ερώτημα έτσι ώστε έπειτα να κάνω μια έκθεση η όποια θα είναι κάπως έτσι ΕΣΟΔΑ ΑΠΟ ΑΙΤΙΟΛΟΓΙΑ : ΣΥΝΔΡΟΜΗ 100 ΑΠΟ ΑΙΤΙΟΛΟΓΙΑ : ΕΣΟΔΑ 50 ΕΞΟΔΑ ΑΠΟ ΑΙΤΙΟΛΟΓΙΑ : ΠΛΗΡΩΜΗ 150 ΑΠΟ ΑΙΤΙΟΛΟΓΙΑ : ΕΞΟΔΑ 50 ΤΑΜΕΙΟ : -50
_tasos Δημοσ. 23 Φεβρουαρίου 2010 Δημοσ. 23 Φεβρουαρίου 2010 Λοιπόν, για να καταλάβω καλά... Θέλεις το άθροισμα των εσόδων ανά αιτιολογία, και αντίστοιχα για τα έξοδα. Αφού μετά πάρεις τα συνολικά έσοδα (άθροισμα των επιμέρους αθροισμάτων) και αντίστοιχα έξοδα να βγάλεις ένα ισοζύγιο, δηλαδή αν τελικά έχω έσοδα ή έξοδα και πόσο. Στο παραπάνω σενάριο, δεν εχει σημασία ποιος είναι ο συναλλασόμενος. Σωστά το κατάλαβα; Η μήπως θέλεις να βγάλεις ισοζύγιο ανά αιτιολογία;
lammis Δημοσ. 25 Φεβρουαρίου 2010 Μέλος Δημοσ. 25 Φεβρουαρίου 2010 Θέλεις το άθροισμα των εσόδων ανά αιτιολογία, και αντίστοιχα για τα έξοδα. Αφού μετά πάρεις τα συνολικά έσοδα (άθροισμα των επιμέρους αθροισμάτων) και αντίστοιχα έξοδα να βγάλεις ένα ισοζύγιο, δηλαδή αν τελικά έχω έσοδα ή έξοδα και πόσο. Στο παραπάνω σενάριο, δεν εχει σημασία ποιος είναι ο συναλλασόμενος. Σωστά το κατάλαβα; αυτό θέλω να κάνω φίλε μου που περιγράφεις παραπάνω (αν γίνετε βέβαια)
_tasos Δημοσ. 26 Φεβρουαρίου 2010 Δημοσ. 26 Φεβρουαρίου 2010 Οι ερωτήσεις που παίρνεις τα δεδομένα ανά αιτολογία είναι οι παρακάτω. >SELECT SUM(ΠΟΣΟ),ΑΙΤΙΟΛΟΓΙΑ FROM ΕΣΟΔΑ GROUP BY ΑΙΤΙΟΛΟΓΙΑ SELECT SUM(ΠΟΣΟ),ΑΙΤΙΟΛΟΓΙΑ FROM ΕΞΟΔΑ GROUP BY ΑΙΤΙΟΛΟΓΙΑ Για να πάρεις τα συνολικά έσοδα κ έξοδα κάνεις τα παρακάτω >SELECT SUM(ΠΟΣΟ),ΑΙΤΙΟΛΟΓΙΑ FROM ΕΣΟΔΑ SELECT SUM(ΠΟΣΟ),ΑΙΤΙΟΛΟΓΙΑ FROM ΕΞΟΔΑ Και μετά, για να πάρεις ένα τελικό ισοζύγιο θα κάνεις απλά την αφαίρεση. >SELECT SUM(ΣΥΝΟΛΟ) FROM (SELECT * FROM (SELECT SUM(ΠΟΣΟ) AS ΣΥΝΟΛΟ FROM ΕΣΟΔΑ) UNION (SELECT SUM(ΠΟΣΟ)*(-1) AS ΣΥΝΟΛΟ FROM ΕΞΟΔΑ)) Λίγο πολύπλοκο το τελευταίο, ε; Ίσως αν δοκίμαζες μία άλλη δομή στους πίνακες σου να ήταν καλύτερα. Θα πρότεινα οι πίνακες ΕΣΟΔΑ και ΕΞΟΔΑ να είναι ένας, π.χ. ΚΙΝΗΣΕΙΣ, και είτε να έχεις ένα επιπλέον πεδίο ΚΙΝΗΣΕΙΣ.ΤΥΠΟΣ, όπου θα παίρνει δύο τιμές, 'ΕΙΣΟΔΟΣ'. 'ΕΞΟΔΟΣ'. Έτσι θα βγαίνουν πιο εύκολα κάποια αθροίσματα. Γίνεται έτσι πιο πολύπλοκος ο πίνακας ΚΙΝΗΣΕΙΣ. Απλά αναφέρω κ μία εναλλακτική, χωρίς να είναι απαραίτητα πιο σωστή.
lammis Δημοσ. 27 Φεβρουαρίου 2010 Μέλος Δημοσ. 27 Φεβρουαρίου 2010 Σε ευχαριστώ φίλε Τάσο τελικά τα κατάφερα χάρις την βοήθειά σου
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.