Σημείωση
Η πρόσβαση σε αυτή τη σελίδα απαιτεί εξουσιοδότηση. Μπορείτε να δοκιμάσετε να συνδεθείτε ή να αλλάξετε καταλόγους.
Η πρόσβαση σε αυτή τη σελίδα απαιτεί εξουσιοδότηση. Μπορείτε να δοκιμάσετε να αλλάξετε καταλόγους.
Ισχύει για:
Υπολογιζόμενη στήλη
Υπολογιζόμενος πίνακας
Μέτρηση
υπολογισμού απεικόνισης
Σημείωση
Αυτή η συνάρτηση δεν συνιστάται να χρησιμοποιηθεί σε υπολογισμούς απεικονίσεων καθώς πιθανώς επιστρέφει ανούσια αποτελέσματα.
Για εισαγωγή στήλης ημερομηνίας, επιστρέφει έναν πίνακα που περιέχει μια στήλη ημερομηνιών που ξεκινά με μια καθορισμένη ημερομηνία έναρξης και συνεχίζει μέχρι μια καθορισμένη ημερομηνία λήξης.
Για εισαγωγή ημερολογίου, επιστρέφει έναν πίνακα που ξεκινά με μια καθορισμένη ημερομηνία έναρξης και συνεχίζει μέχρι μια καθορισμένη ημερομηνία λήξης. Ο πίνακας περιέχει όλες τις κύριες στήλες με ετικέτες και στήλες που σχετίζονται με όλο τον χρόνο.
Αυτή η συνάρτηση είναι κατάλληλη για μεταβίβαση ως φίλτρου στη συνάρτηση CALCULATE. Χρησιμοποιήστε την για να φιλτράρετε μια παράσταση κατά ένα προσαρμοσμένο εύρος ημερομηνιών.
Σημείωση
Εάν εργάζεστε με τυπικά διαστήματα ημερομηνιών όπως ημέρες, μήνες, τρίμηνα ή έτη, συνιστάται να χρησιμοποιήσετε τη συνάρτηση DATESINPERIOD που ταιριάζει καλύτερα.
Σύνταξη
DATESBETWEEN(<dates> or <calendar>, <StartDate>, <EndDate>)
Παραμέτρους
| Όρος | Ορισμός |
|---|---|
dates or calendar |
Μια στήλη που περιέχει ημερομηνίες ή μια αναφορά ημερολογίου |
StartDate |
Μια παράσταση ημερομηνίας/ημέρας. Εάν χρησιμοποιείται η σύνταξη ημερολογίου, χρησιμοποιήστε τον ίδιο τύπο δεδομένων με την κύρια στήλη που έχει επισημανθεί στην κατηγορία Day. |
EndDate |
Μια παράσταση ημερομηνίας/ημέρας. Εάν χρησιμοποιείται η σύνταξη ημερολογίου, χρησιμοποιήστε τον ίδιο τύπο δεδομένων με την κύρια στήλη που έχει επισημανθεί στην κατηγορία Day. |
Τιμή επιστροφής
Για εισαγωγή στήλης ημερομηνίας, ένας πίνακας που περιέχει μία μόνο στήλη τιμών ημερομηνίας.
Για την εισαγωγή ημερολογίου, έναν πίνακα που περιέχει όλες τις κύριες στήλες με ετικέτες και όλες τις σχετικές στήλες χρόνου.
Παρατηρήσεις
Στην πιο συνηθισμένη περίπτωση χρήσης,
datesείναι μια αναφορά στη στήλη ημερομηνιών ενός επισημαστηρίου πίνακα ημερομηνιών.Εάν
StartDateείναι BLANK, τότεStartDateθα είναι η παλαιότερη τιμή στη στήληdates. Για το ημερολόγιο, θα είναι η πρώτη τιμή στη στήλη που έχει επισημανθεί ως ημέρα.Εάν το
EndDateείναι BLANK, τότεEndDateθα είναι η πιο πρόσφατη τιμή στη στήληdates. Για το ημερολόγιο, θα είναι η τελευταία τιμή στη στήλη που έχει επισημανθεί ως ημέρα.Οι ημερομηνίες που χρησιμοποιούνται ως
StartDateκαιEndDateσυμπεριλαμβάνονται. Επομένως, για παράδειγμα, εάν η τιμήStartDateείναι 1 Ιουλίου 2019, τότε αυτή η ημερομηνία θα συμπεριληφθεί στον πίνακα που επιστρέφεται (με την προϋπόθεση ότι η ημερομηνία υπάρχει στη στήληdates).Για την εισαγωγή στήλης ημερομηνίας, ο πίνακας που επιστρέφεται μπορεί να περιέχει μόνο ημερομηνίες που είναι αποθηκευμένες στη
Datesστήλη. Επομένως, για παράδειγμα, εάν η στήληDatesξεκινά από την 1η Ιουλίου 2017 και η τιμήStartDateείναι 1η Ιουλίου 2016, ο πίνακας που επιστράφηκε θα ξεκινήσει από την 1η Ιουλίου 2017.Για την εισαγωγή ημερολογίου, εάν η ημερομηνία εισόδου δεν βρεθεί στη στήλη ημέρας με ετικέτα, θα αντιμετωπιστεί ως BLANK και έτσι θα χρησιμοποιηθεί η πρώτη/τελευταία τιμή.
Για εισαγωγή ημερολογίου, χρησιμοποιήστε τον ίδιο τύπο δεδομένων και μορφή με τη στήλη ημέρας με ετικέτα για την ημερομηνία έναρξης και ημερομηνία λήξης. Για παράδειγμα, εάν η στήλη χρησιμοποιεί τη μορφή YYYY-Sn-Qn-Mnn-Wnn-Dnn (π.χ. "2014-S2-Q4-M11-W45-D03"), η ημερομηνία έναρξης και λήξης πρέπει να ακολουθούν την ίδια μορφή (π.χ., "2015-S2-Q4-M11-W45-D03"). Διαφορετικά, η συμπεριφορά δεν έχει οριστεί.
-
Αυτή η συνάρτηση δεν υποστηρίζεται για χρήση σε λειτουργία DirectQuery όταν χρησιμοποιείται σε υπολογιζόμενες στήλες ή σε κανόνες ασφάλειας σε επίπεδο γραμμών (RLS).
Παράδειγμα
Ο ακόλουθος ορισμός πίνακα Πωλήσεις χρησιμοποιεί τη συνάρτηση DATESBETWEEN για να δημιουργήσει έναν υπολογισμό από τη ζωή μέχρι σήμερα (LTD). Το life-to-date αντιπροσωπεύει τη συσσώρευση μιας μέτρησης σε βάθος χρόνου από την αρχή του χρόνου.
Παρατηρήστε ότι ο τύπος χρησιμοποιεί τη συνάρτηση MAX. Αυτή η συνάρτηση επιστρέφει την τελευταία ημερομηνία που βρίσκεται στο περιβάλλον φίλτρου. Επομένως, η συνάρτηση DATESBETWEEN επιστρέφει έναν πίνακα ημερομηνιών που ξεκινούν από την παλαιότερη ημερομηνία μέχρι την αναφορά της τελευταίας ημερομηνίας.
Παραδείγματα σε αυτό το άρθρο μπορούν να χρησιμοποιηθούν με το δείγμα μοντέλου Adventure Works DW 2020 Power BI Desktop. Για να λάβετε το μοντέλο, ανατρέξτε DAX δείγμαμοντέλου .
Customers LTD =
CALCULATE (
DISTINCTCOUNT ( Sales[CustomerKey] ),
DATESBETWEEN ( 'Date'[Date], BLANK (), MAX ( 'Date'[Date] ) )
)
Λάβετε υπόψη ότι η παλαιότερη ημερομηνία που αποθηκεύεται στον πίνακα Ημερομηνία είναι η 1η Ιουλίου 2017. Επομένως, όταν μια αναφορά φιλτράρει τη μέτρηση κατά τον μήνα Ιούνιο του 2020, η συνάρτηση DATESBETWEEN επιστρέφει μια περιοχή ημερομηνιών από την 1η Ιουλίου 2017 έως τις 30 Ιουνίου 2020.
Παράδειγμα χρονικής ευφυΐας βάσει ημερολογίου
Ο ακόλουθος ορισμός πίνακα Πωλήσεις χρησιμοποιεί τη συνάρτηση DATESBETWEEN για να δημιουργήσει έναν υπολογισμό από τη ζωή μέχρι σήμερα (LTD). Το life-to-date αντιπροσωπεύει τη συσσώρευση μιας μέτρησης σε βάθος χρόνου από την αρχή του χρόνου.
Παρατηρήστε ότι ο τύπος χρησιμοποιεί τη συνάρτηση MAX. Αυτή η συνάρτηση επιστρέφει το μέγιστο datekey που βρίσκεται στο περιβάλλον φίλτρου. Επομένως, η συνάρτηση DATESBETWEEN επιστρέφει έναν πίνακα ημερομηνιών που ξεκινούν από την παλαιότερη ημερομηνία μέχρι την αναφορά της τελευταίας ημερομηνίας. Το DateKey χρησιμοποιείται ως παράδειγμα για να δείξει ότι η κατηγορία "Ημέρα" μπορεί να επισημανθεί με μια στήλη που δεν έχει τύπο ημερομηνίας
Customers LTD =
CALCULATE (
DISTINCTCOUNT ( Sales[CustomerKey] ),
DATESBETWEEN ( FiscalCalendar, BLANK (), MAX ( 'Date'[DateKey] ) )
)