Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Se aplica a:
columna Calculada
tabla calculada
Medida
cálculo visual
Nota
No se recomienda usar esta función en cálculos visuales, ya que probablemente devuelva resultados sin sentido.
Para la entrada de columna de fecha, devuelve una tabla que contiene una columna de fechas que comienza con una fecha de inicio especificada y continúa hasta una fecha de finalización especificada.
Para la entrada del calendario, devuelve una tabla que comienza con una fecha de inicio especificada y continúa hasta una fecha de finalización especificada. La tabla contiene todas las columnas etiquetadas principal y todas las columnas relacionadas con el tiempo.
Esta función es adecuada para pasar como filtro a la función CALCULATE. Úselo para filtrar una expresión por un intervalo de fechas personalizado.
Nota
Si trabaja con intervalos de fecha estándar, como días, meses, trimestres o años, se recomienda usar la función de DATESINPERIOD más adecuada.
Sintaxis
DATESBETWEEN(<dates> or <calendar>, <StartDate>, <EndDate>)
Parámetros
| Término | Definición |
|---|---|
dates or calendar |
Columna que contiene fechas o una referencia de calendario |
StartDate |
Expresión de fecha y día. Si se usa la sintaxis del calendario, use el mismo tipo de datos que la columna principal etiquetada en la categoría Día. |
EndDate |
Expresión de fecha y día. Si se usa la sintaxis del calendario, use el mismo tipo de datos que la columna principal etiquetada en la categoría Día. |
Valor devuelto
Para la entrada de columna de fecha, una tabla que contiene una sola columna de valores de fecha.
Para la entrada del calendario, una tabla que contiene todas las columnas etiquetadas principal y todas las columnas relacionadas con el tiempo.
Observaciones
En el caso de uso más común,
dateses una referencia a la columna de fecha de una tabla de fechas marcada.Si
StartDatees BLANK,StartDateserá el valor más antiguo de la columnadates. En el caso del calendario, será el primer valor de la columna que se etiqueta como día.Si
EndDatees BLANK,EndDateserá el valor más reciente de la columnadates. En el caso del calendario, será el último valor de la columna que se etiqueta como día.Las fechas usadas como
StartDateyEndDateson inclusivas. Por lo tanto, por ejemplo, si el valor deStartDatees el 1 de julio de 2019, esa fecha se incluirá en la tabla devuelta (siempre que la fecha exista en la columnadates).Para la entrada de columna de fecha, la tabla devuelta solo puede contener fechas almacenadas en la
Datescolumna. Por ejemplo, si la columnaDatescomienza desde el 1 de julio de 2017 y el valor deStartDatees el 1 de julio de 2016, la tabla devuelta comenzará desde el 1 de julio de 2017.Para la entrada del calendario, si la fecha de entrada no se encuentra en la columna de día etiquetada, se tratará como BLANK y, por tanto, se usará el primer/último valor.
Para la entrada del calendario, use el mismo tipo de datos y formato que la columna de día etiquetada para la fecha de inicio y la fecha de finalización. Por ejemplo, si la columna usa el formato YYYY-Sn-Qn-Mnn-Wnn-Dnn (por ejemplo, "2014-S2-Q4-M11-W45-D03"), la fecha de inicio y la fecha de finalización deben seguir el mismo formato (por ejemplo, "2015-S2-Q4-M11-W45-D03"). De lo contrario, el comportamiento no está definido.
Esta función no se admite para su uso en el modo DirectQuery cuando se usa en columnas calculadas o reglas de seguridad de nivel de fila (RLS).
Ejemplo
La siguiente definición de medida de la tabla Sales
Observe que la fórmula usa la función MAX. Esta función devuelve la fecha más reciente que se encuentra en el contexto de filtro. Por lo tanto, la función DATESBETWEEN devuelve una tabla de fechas a partir de la fecha más antigua hasta la fecha más reciente que se notifica.
Los ejemplos de este artículo se pueden usar con el modelo de Power BI Desktop de Adventure Works 2020 de ejemplo. Para obtener el modelo, consulte DAX modelo de ejemplo.
Customers LTD =
CALCULATE (
DISTINCTCOUNT ( Sales[CustomerKey] ),
DATESBETWEEN ( 'Date'[Date], BLANK (), MAX ( 'Date'[Date] ) )
)
Tenga en cuenta que la fecha más antigua almacenada en la tabla Fecha es el 1 de julio de 2017. Por lo tanto, cuando un informe filtra la medida por el mes de junio de 2020, la función DATESBETWEEN devuelve un intervalo de fechas comprendido entre el 1 de julio de 2017 y el 30 de junio de 2020.
Ejemplo de inteligencia de tiempo basada en calendarios
La siguiente definición de medida de la tabla Sales
Observe que la fórmula usa la función MAX. Esta función devuelve el valor de datekey máximo que se encuentra en el contexto de filtro. Por lo tanto, la función DATESBETWEEN devuelve una tabla de fechas a partir de la fecha más antigua hasta la fecha más reciente que se notifica. DateKey se usa como ejemplo para mostrar que la categoría "Day" se puede etiquetar con una columna que no tiene tipo de fecha.
Customers LTD =
CALCULATE (
DISTINCTCOUNT ( Sales[CustomerKey] ),
DATESBETWEEN ( FiscalCalendar, BLANK (), MAX ( 'Date'[DateKey] ) )
)
Contenido relacionado
- funciones de inteligencia de tiempo (DAX)
- funciones de fecha y hora de (DAX)
- función DATESINPERIOD (DAX)