Κατανόηση συναρτήσεων για γονικές-θυγατρικές ιεραρχίες στο DAX
Το DAX παρέχει πέντε συναρτήσεις για να βοηθήσει τους χρήστες να διαχειρίζονται δεδομένα που παρουσιάζονται ως ιεραρχία γονικού-θυγατρικού στοιχείου στα μοντέλα τους. Με αυτές τις συναρτήσεις, ένας χρήστης μπορεί να αποκτήσει ολόκληρη τη γενεαλογία των γονικών που διαθέτει μια γραμμή, πόσα επίπεδα έχει η γενεαλογία μέχρι το ανώτερο γονικό στοιχείο, ποιο είναι το γονικό επίπεδο n πάνω από την τρέχουσα γραμμή, ποιο είναι το απογονικό στοιχείο n από το επάνω μέρος της τρέχουσας ιεραρχίας γραμμών και είναι ένα συγκεκριμένο γονικό στοιχείο στην τρέχουσα ιεραρχία γραμμών;
Γονικές-θυγατρικές συναρτήσεις στο DAX
Ο παρακάτω πίνακας περιέχει μια ιεραρχία γονικού-θυγατρικού στοιχείου στις στήλες: EmployeeKey και ParentEmployeeKey που χρησιμοποιείται σε όλα τα παραδείγματα συναρτήσεων.
EmployeeKey | ParentEmployeeKey |
---|---|
112 | |
14 | 112 |
3 | 14 |
11 | 3 |
13 | 3 |
162 | 3 |
117 | 162 |
221 | 162 |
81 | 162 |
Στον παραπάνω πίνακα μπορείτε να δείτε ότι ο υπάλληλος 112 δεν έχει καθορισμένο γονικό στοιχείο, ο υπάλληλος 14 έχει τον υπάλληλο 112 ως διευθυντή (ParentEmployeeKey), ο υπάλληλος 3 έχει τον υπάλληλο 14 ως διευθυντή και οι υπάλληλοι 11, 13 και 162 έχουν τον εργαζόμενο 3 ως διευθυντή. Τα παραπάνω βοηθούν να κατανοήσετε ότι ο υπάλληλος 112 δεν έχει προϊστάμενο πάνω από αυτόν και είναι ο κορυφαίος διευθυντής για όλους τους υπαλλήλους που εμφανίζονται εδώ. επίσης, ο υπάλληλος 3 αναφέρεται στον υπάλληλο 14 και οι υπάλληλοι 11, 13, 162 αναφέρουν στον 3.
Ο παρακάτω πίνακας παρουσιάζει τις διαθέσιμες συναρτήσεις, μια σύντομη περιγραφή της συνάρτησης και ένα παράδειγμα της συνάρτησης με τα ίδια δεδομένα που εμφανίζονται παραπάνω.
Συνάρτηση PATH - Επιστρέφει ένα οριοθετημένο κείμενο με τα αναγνωριστικά όλων των γονικών στοιχείων στην τρέχουσα γραμμή, ξεκινώντας από το παλαιότερο ή το ανώτατο μέχρι σήμερα.
EmployeeKey | ParentEmployeeKey | Path |
---|---|---|
112 | 112 | |
14 | 112 | 112|14 |
3 | 14 | 112|14|3 |
11 | 3 | 112|14|3|11 |
13 | 3 | 112|14|3|13 |
162 | 3 | 112|14|3|162 |
117 | 162 | 112|14|3|162|117 |
221 | 162 | 112|14|3|162|221 |
81 | 162 | 112|14|3|162|81 |
Συνάρτηση PATHLENGTH - Επιστρέφει τον αριθμό των επιπέδων μιας συγκεκριμένης PATH(), ξεκινώντας από το τρέχον επίπεδο μέχρι το παλαιότερο ή το ανώτερο επίπεδο του γονικού στοιχείου. Στο παρακάτω παράδειγμα, η στήλη PathLength ορίζεται ως "= PATHLENGTH([Path])
". Το παράδειγμα περιλαμβάνει όλα τα δεδομένα από το παράδειγμα Path() για να κατανοήσετε πώς λειτουργεί αυτή η συνάρτηση.
EmployeeKey | ParentEmployeeKey | Path | PathLength |
---|---|---|---|
112 | 112 | 1 | |
14 | 112 | 112|14 | 2 |
3 | 14 | 112|14|3 | 3 |
11 | 3 | 112|14|3|11 | 4 |
13 | 3 | 112|14|3|13 | 4 |
162 | 3 | 112|14|3|162 | 4 |
117 | 162 | 112|14|3|162|117 | 5 |
221 | 162 | 112|14|3|162|221 | 5 |
81 | 162 | 112|14|3|162|81 | 5 |
Συνάρτηση PATHITEM - Επιστρέφει το στοιχείο στην καθορισμένη θέση από ένα αποτέλεσμα PATH(), μετρώντας από αριστερά προς τα δεξιά. Στο παρακάτω παράδειγμα, η στήλη PathItem - 4η από αριστερά- ορίζεται ως "= PATHITEM([Path], 4)
". Αυτό το παράδειγμα επιστρέφει το EmployeKey στην τέταρτη θέση στη συμβολοσειρά Path από τα αριστερά, χρησιμοποιώντας το ίδιο δείγμα δεδομένων από το παράδειγμα Path().
EmployeeKey | ParentEmployeeKey | Path | PathItem - 4η από αριστερά |
---|---|---|---|
112 | 112 | ||
14 | 112 | 112|14 | |
3 | 14 | 112|14|3 | |
11 | 3 | 112|14|3|11 | 11 |
13 | 3 | 112|14|3|13 | 13 |
162 | 3 | 112|14|3|162 | 162 |
117 | 162 | 112|14|3|162|117 | 162 |
221 | 162 | 112|14|3|162|221 | 162 |
81 | 162 | 112|14|3|162|81 | 162 |
Συνάρτηση PATHITEMREVERSE - Επιστρέφει το στοιχείο στη θέση από ένα αποτέλεσμα συνάρτησης PATH(), μετρώντας προς τα πίσω από τα δεξιά προς τα αριστερά.
Στο παρακάτω παράδειγμα, η στήλη PathItemReverse - 3η από δεξιά- ορίζεται ως "= PATHITEMREVERSE([Path], 3)
". Αυτό το παράδειγμα επιστρέφει το EmployeKey στην τρίτη θέση στη συμβολοσειρά Path από τα δεξιά, χρησιμοποιώντας το ίδιο δείγμα δεδομένων από το παράδειγμα Path().
EmployeeKey | ParentEmployeeKey | Path | PathItemReverse - 3η από δεξιά |
---|---|---|---|
112 | 112 | ||
14 | 112 | 112|14 | |
3 | 14 | 112|14|3 | 112 |
11 | 3 | 112|14|3|11 | 14 |
13 | 3 | 112|14|3|13 | 14 |
162 | 3 | 112|14|3|162 | 14 |
117 | 162 | 112|14|3|162|117 | 3 |
221 | 162 | 112|14|3|162|221 | 3 |
81 | 162 | 112|14|3|162|81 | 3 |
Συνάρτηση PATHCONTAINS - Επιστρέφει TRUE εάν το καθορισμένο στοιχείο υπάρχει στην καθορισμένη διαδρομή. Στο παρακάτω παράδειγμα, η στήλη PathContains - υπάλληλος 162 ορίζεται ως "= PATHCONTAINS([Path], "162")
". Αυτό το παράδειγμα επιστρέφει TRUE εάν η συγκεκριμένη διαδρομή περιέχει τον υπάλληλο 162. Αυτό το παράδειγμα χρησιμοποιεί τα αποτελέσματα από το παράδειγμα Path() παραπάνω.
EmployeeKey | ParentEmployeeKey | Path | PathContains - υπάλληλος 162 |
---|---|---|---|
112 | 112 | FALSE | |
14 | 112 | 112|14 | FALSE |
3 | 14 | 112|14|3 | FALSE |
11 | 3 | 112|14|3|11 | FALSE |
13 | 3 | 112|14|3|13 | FALSE |
162 | 3 | 112|14|3|162 | TRUE |
117 | 162 | 112|14|3|162|117 | TRUE |
Σχόλια
https://aka.ms/ContentUserFeedback.
Σύντομα διαθέσιμα: Καθ' όλη τη διάρκεια του 2024 θα καταργήσουμε σταδιακά τα ζητήματα GitHub ως μηχανισμό ανάδρασης για το περιεχόμενο και θα το αντικαταστήσουμε με ένα νέο σύστημα ανάδρασης. Για περισσότερες πληροφορίες, ανατρέξτε στο θέμα:Υποβολή και προβολή σχολίων για