Προγραμματισμός

* Γνώση Υπολογιστών >> Προγραμματισμός >> Προγραμματισμός Υπολογιστών Γλώσσες

Oracle : Πώς να χωρίσει τιμές Into Στήλες

Μερικές φορές είναι χρήσιμο να δημιουργήσετε στήλες από ένα πολλαπλών τιμών σε ένα πεδίο βάσης δεδομένων της Oracle . Βλέποντας τις τιμές δεδομένων ως στήλη , σε αντίθεση με σειρές , επιτρέπει για διαφορετικούς χειρισμούς δεδομένων και παρουσιάσεις. Ένα παράδειγμα μπορεί να είναι να εκτελέσετε μια μαθηματική πράξη σε έναν κατάλογο από το ένα πεδίο , αλλά παρουσιάζεται ως αποτέλεσμα σύμφωνα με μια άλλη τιμή που αντιπροσωπεύει μια κατηγορία για τη συγκεκριμένη τιμή . Αυτό μπορεί να θεωρηθεί ως το ισοδύναμο ενός πλέγματος ή γράφημα cross - tab . Οδηγίες
Η 1

Δείτε ποια δεδομένα είναι διαθέσιμα μέσω ενός ερωτήματος . Ex : SELECT * FROM ΠΙΝΑΚΑ

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

ΚΑΤΗΓΟΡΙΑ ΤΙΜΗ ITEM $

------ . Ένα ----------- 1 -------- 5

------ A ----------- 2 --- ---- 10

------ B ----------- 2 ------- 10

------ B ----------- 3 ------- 15

------ C ----------- 3 ---- --- 15

------ C ----------- 4 ------- 20 2

Ξαναγράψτε το ερώτημα για να δημιουργήσετε στήλες για τις τιμές ΚΑΤΗΓΟΡΙΑ .

SELECT

DECODE ( ΚΑΤΗΓΟΡΙΑ , 'A' , ΣΗΜΕΙΟ , null ) CATEGORYA , πώληση

DECODE ( ΚΑΤΗΓΟΡΙΑ , «Β» , ITEM , null ) CATEGORYB , πώληση

DECODE ( ΚΑΤΗΓΟΡΙΑ , «Β» , ΘΕΜΑ , null ) Κατηγορία Γ

ΑΠΟ ΠΙΝΑΚΑ

Σημείωση : Αυτό το ερώτημα δείχνει πώς μία σειρά τιμών μπορεί να γίνει στήλες

Αποτέλεσμα της Query

CATEGORYA CATEGORYB Κατηγορία Γ

------- 1

------- 2

----------------------------- 2

------------- ---------------- 3

--------------------------- ------------------------- 3

------------------ ---------------------------------- 4
Ακόμα κι αν ΚΑΤΗΓΟΡΙΑ έχει χωριστεί σε μοναδικές στήλες , οι σειρές δεδομένων δεν καταρρέουν . Έξι σειρές δεδομένων ( βλ. Βήμα 1 αποτέλεσμα) εξακολουθούν να καταλαμβάνουν έξι σειρές της παραγωγής εικόνων
3

Ξαναγράψτε το ερώτημα για να βρείτε τη μέγιστη τιμή ανά κατηγορία στήλες : .

SELECT

MAX ( DECODE ( ΚΑΤΗΓΟΡΙΑ , 'A' , $ ΤΙΜΗ , null ) ) CATEGORYA , πώληση

MAX ( DECODE (κατηγορία « Β » , $ ΤΙΜΗ , null ) ) CATEGORYB ,

MAX ( DECODE ( ΚΑΤΗΓΟΡΙΑ , 'C' , $ ΤΙΜΗ , null ) ) Κατηγορία Γ

ΑΠΟ ΠΙΝΑΚΑ

Σημείωση :

Αυτό το ερώτημα εμφανίζει τώρα που προκύπτει γραμμή δεδομένων ( η μέγιστη τιμή ) ανά κατηγορία

Αυτό μπορεί να ελεγχθεί από τους παράδειγμα δεδομένων στο Βήμα 1

- . . για CategoryA , 10 είναι οι μέγιστες τιμές 5 και 10

. - για CategoryB , 15 είναι οι μέγιστες τιμές 10 και 15

- για την Κατηγορία Γ , 20 είναι οι μέγιστες τιμές 15 και 20

Αποτέλεσμα Ερώτημα: .

CATEGORYA CATEGORYB . Κατηγορία Γ

--------- 10 ---------- ------- 15 ---------- ----- 20
Η
εικόνων

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα