Está en la página 1de 16

Funciones de DAX

Aquí encontrarás todas las funciones de DAX. Las funciones están divididas en las
siguientes categorías:
- Funciones Lógicas
- Funciones Matemáticas
- Funciones Estadísticas
- Funciones de Fecha y Hora
- Funciones de Texto
- Funciones de Filtrado
- Funciones de Inteligencia de Tiempo
- Funciones de Información
- Funciones Primarias y Secundarias
- Otras Funciones

Además encontrarás las funciones más utilizadas en la primera tabla de cada


categoría, seguido por una tabla con todas las funciones de la categoría.

Al final se encuentran unas notas que te van a ser de utilidad.

Categoría: Funciones Lógicas

Funciones más utilizadas:


Función Descripción Sintaxis
Revisa si se cumple con una condición. Si la condición se IF(Condición, Resultado si es
IF cumple, regresa un valor. Si la condición no se cumple, verdadera, Resultado si es
regresa otro valor. falsa)
Evalúa una expresión. Si la expresión arroja un error, la
IFERROR(Expresión,
IFERROR función nos da un valor que hayamos definido. Si la
Expresión si es error)
expresión es correcta, regresará el valor de la expresión.
Revisa si dos argumentos son verdaderos. Si ambos son
AND verdaderos, regresa TRUE. Si uno o ambos son falsos, AND(Expresión1, Expresión 2)
regresa FALSE.
Revisa si dos argumentos son verdaderos. Si uno o ambos
OR son verdaderos, regresa TRUE. Si ambos son falsos, OR(Expresión1, Expresión 2)
regresa FALSE.

Más funciones en la categoría:

Función Descripción Sintaxis


FALSE Devuelve el valor lógico FALSE FALSE()
NOT Cambia FALSE por TRUE y TRUE por FALSE NOT(expresión)
Devuelve resultados diferentes en función de una SWITCH(Expresión, Valor1,
SWITCH
expresión Resultados1, …, [Else])
TRUE Devuelve el valor lógico TRUE TRUE()

Categoría: Funciones Matemáticas

Funciones más utilizadas:


Función Descripción Sintaxis
SUM Suma todos los números de una columna SUM(Nombre de la columna)
ROUND(Número, Número de
ROUND Redondea un número al número de dígitos especificado
dígitos)
Devuelve un número aleatorio mayor o igual que 0 y menor
RAND que 1, distribuido uniformemente. Los números aleatorios RAND()
cambian en los recálculos.
Devuelve un número aleatorio entre los números que RANDBETWEEN(Abajo,
RANDBETWEEN
especifique Arriba)
DIVIDE(Numerador,
Función de división segura con posibilidad de controlar
DIVIDE Denominador, [Resultado
divisiones por cero
Alterno])

Más funciones en la categoría:

Función Descripción Sintaxis


ABS Devuelve el valor absoluto de un número ABS(Número)
Devuelve el arcoseno o el coseno inverso de un número. El
arcoseno es el ángulo cuyo coseno es un número. El
ACOS ACOS(Número)
ángulo devuelto se proporciona en radianes en el rango de
0 (cero) a pi.
Devuelve el coseno hiperbólico inverso de un número. El
número debe ser mayor o igual que 1. El coseno
ACOSH hiperbólico inverso es el valor cuyo coseno hiperbólico es ACOSH(Número)
número, por lo que ACOSH(COSH(número)) es igual a un
número.
Devuelve el arcoseno o el seno inverso de un número. El
arcoseno es el ángulo cuyo seno es un número. El ángulo
ASIN ASIN(Número)
devuelto se proporciona en radianes en el rango de -pi/2
pi/2.
Devuelve el seno hiperbólico inverso de un número. El
seno hiperbólico inverso es el valor cuyo seno hiperbólico
ASINH ASINH(Número)
es número, por lo que ASINH(SINH(número)) es igual a un
número.
Devuelve el arcotangente o la tangente inversa de un
número. El arcotangente es el ángulo cuya tangente es un
ATAN ATAN(Número)
número. El ángulo devuelto se proporciona en radianes en
el rango de -pi/2 a pi/2.
Devuelve la tangente hiperbólica inversa de un número. El
número debe ser entre -1 y 1 (excluyendo -1 y 1). La
ATANH ATANH(Número)
tangente hiperbólica es un número, de modo que
ATANH(TANH(número)) es igual a un número.
Redondea un número hacia arriba, a la unidad significativa CEILING(Número, Cifra
CEILING
o el entero más próximo. significativa)
Devuelve el número de combinaciones de un número dado
COMBIN(Número,
COMBIN de elementos. Use COMBIN para determinar el número
Number_chosen)
total posible de grupos de un número dado de elementos.
Devuelve la cantidad de combinaciones (con repeticiones) COMBINA(Número,
COMBINA
de una cantidad determinada de elementos. Number_chosen)
COS Devuelve el coseno del ángulo dado. COS(Número)
COSH Devuelve el coseno hiperbólico de un número. COSH(Número)
CURRENCY Devuelve el valor como un tipo de datos de moneda. CURRENCY(Valor)
DEGREES Convierte los radianes en grados. DEGREES(Ángulo)
Devuelve el número redondeado hacia arriba al entero par
más cercano. Puede usar esta función para procesar los
EVEN EVEN(Número)
elementos que vienen en dos. Por ejemplo, un contenedor
de empaquetado acepta filas de uno o dos artículos.
Devuelve e elevado a la potencia de un número
EXP EXP(Número)
determinado.
Devuelve el factorial de un número, igual a 1*2*3*…*
FACT FACT(Número)
Número.
Redondea un número hacia abajo, hacia cero, al múltiplo FLOOR(Número, Cifra
FLOOR
significativo más cercano. significativa)
Devuelve el máximo común divisor de dos enteros, que es
GCD el entero mayor que divide tanto el número1 como el GCD(Número1, Número2)
número2 sin un resto.
INT Redondea un número hasta el entero inferior más próximo. INT(Número)
Redondea un número hacia arriba, al entero o al múltiplo ISO.CEILING(Número, [Cifra
ISO.CEILING
significativo más próximo. significativa])
Devuelve el mínimo común múltiplo de enteros, que es
menor entero positivo que es múltiplo tanto del argumento
LCM LCM(Número1, Número2)
de entero número1 como del número2. Use LCM para
agregar fracciones con diferentes denominadores.
LN Devuelve el logaritmo natural de un número. LN(Número)
Devuelve el logaritmo de un número en la base
LOG LOG(Número, [Base])
especificada.
LOG10 Devuelve el logaritmo en base 10 de un número. LOG10(Número)
MOD Devuelve el resto tras dividir un número por un divisor. MOD(Número, Divisor)
MROUND Devuelve un número redondeado al múltiplo deseado. MROUND(Número, Multiple)
Devuelve un número redondeado al entero impar más
ODD ODD(Número)
cercano.
Devuelve el valor Pi (3,14159265358979) con precisión de
PI PI()
15 dígitos.
POWER Devuelve el resultado de elevar un número a una potencia. POWER(Número, Power)
Devuelve el producto de los valores de una expresión en
PRODUCTX PRODUCTX(Tabla, Expresión)
una tabla.
QUOTIENT(Numerador,
QUOTIENT Devuelve la parte entera de una división.
Denominador)
RADIANS Convierte los grados en radianes. RADIANS(Número)
ROUNDDOWN(Número,
ROUNDDOWN Redondea un número hacia abajo, hacia cero.
NumberOfDigits)
Redondea un número hacia arriba, en dirección contraria a ROUNDUP(Número,
ROUNDUP
cero. NumberOfDigits)
Devuelve el signo de un número: 1, si el número es
SIGN positivo; cero, si el número es cero y -1, si el número es SIGN(Número)
negativo.
SQRT Devuelve la raíz cuadrada de un número. SQRT(Número)
Devuelve la suma de una expresión evaluada para cada fila
SUMX SUMX(Tabla, Expresión)
de una tabla.
Convierte un número decimal en uno entero al quitar la TRUNC(Número,
TRUNC
parte decimal o de fracción. [NumberOfDigits])

Categoría: Funciones Estadísticas

Funciones más utilizadas:


Función Descripción Sintaxis
Devuelve el promedio (media aritmética) de todos los
AVERAGE AVERAGE(ColumnName)
números de una columna
COUNT Cuenta los números de una columna COUNT(ColumnName)
COUNTA Cuenta el número de valores de una columna COUNTA(ColumnName)
DISTINCTCOUNT Cuenta el número de valores distintos de una columna. DISTINCTCOUNT(ColumnName)
Devuelve el valor numérico mayor de una columna o el
MAX(ColumnNameOrScalar1,
MAX valor mayor de dos expresiones escalares. Omite los
[Scalar2])
valores lógicos y el texto.
Devuelve el valor numérico menor de una columna o el
MIN(ColumnNameOrScalar1,
MIN valor menor de dos expresiones escalares. Omite los
[Scalar2])
valores lógicos y el texto.

Más funciones en la categoría:

Función Descripción Sintaxis


Devuelve una tabla con nuevas columnas ADDCOLUMNS(Tabla, Nombre1,
ADDCOLUMNS
especificados por expresiones DAX. Expresión1, … )
APPROXIMATEDISTINCTCOUNT APPROXIMATEDISTINCTCOUNT
Devuelve el promedio (media aritmética)
AVERAGEA de los valores de una columna. Procesa el AVERAGEA(ColumnName)
texto y los valores no numéricos.
Devuelve el promedio (media aritmética)
AVERAGEX de un conjunto de expresiones evaluadas AVERAGEX(Tabla, Expresión)
en una tabla.
Devuelve la distribución beta se usa
normalmente para estudiar la variación en
BETA.DIST(X, Alfa, Beta,
BETA.DIST el porcentaje de algo a través de
Acumulativo, [A], [B])
muestras, como la parte del día que la
gente empleó en ver la televisión.
Devuelve la inversa de la función de
densidad de probabilidad acumulativa
(BETA.DIST). Si probability =
BETA.DIST(x,…TRUE), entonces
BETA.INV (probability,…) = x. La BETA.INV(Probabilidad, Alfa,
BETA.INV
distribución beta puede usarse en la Beta, [A], [B])
planificación de proyectos para modelar
tiempos de finalización probables, dados
una variabilidad y un tiempo de
finalización esperados.
Devuelve el inverso de la probabilidad de
CHISQ.INV(Probabilidad,
CHISQ.INV cola izquierda de la distribución chi
Grados_de_libertad)
cuadrado, que se usa habitualmente para
estudiar la variación en el porcentaje de
algo en muestras, como la fracción del día
que las personas pasan viendo la
televisión.
Devuelve el inverso de la probabilidad de
cola derecha de la distribución chi
cuadrado. Si probabilidad =
CHISQ.DIST.RT(x,…) CHISQ.INV.RT CHISQ.INV.RT Probabilidad,
CHISQ.INV.RT
(probability,…) = x. Use esta función para Grados_de_libertad)
comparar los resultados observados con
los esperados para decidir si su hipótesis
original es válida.
Devuelve el intervalo de confianza para la
CONFIDENCE.NORM(Alfa,
CONFIDENCE.NORM media de probación, con una distribución
Desv_estándar, Tamaño)
normal.
Devuelve el intervalo de confianza para
CONFIDENCE.T(Alfa,
CONFIDENCE.T una media de probación, con una
Desv_estándar, Tamaño)
distribución t de Estudiante.
Cuenta el número de valores que son el
COUNTAX resultado de evaluar una expresión para COUNTAX(Tabla, Expresión)
cada fila de una tabla.
Cuenta el número de espacios en blanco
COUNTBLANK COUNTBLANK(ColumnName)
de una columna.
COUNTROWS Cuenta el número de filas de una tabla. COUNTROWS(Tabla)
Cuenta el número de valores que son el
COUNTX resultado de evaluar una expresión para COUNTX(Tabla, Expresión)
cada fila de una tabla.
Devuelve una tabla que es una
CROSSJOIN combinación cruzada de las tablas CROSSJOIN(Tabla1, …)
especificadas.
Devuelve una tabla con datos definidos en DATATABLE(nombre1, tipo1, …,
DATATABLE
línea. datos)
Devuelve la distribución exponencial. Use
EXPON.DIST para modelar el tiempo
entre eventos, como cuánto tiempo dedica
EXPON.DIST(X, Lambda,
EXPON.DIST un cajero automático a entregar efectivo.
Acumulativo)
Por ejemplo, puede usar EXPON.DIST
para determinar la probabilidad de que el
proceso tarde 1 minuto como mínimo.
La expresión de la segunda tabla se
evaluará para cada fila de primera tabla.
GENERATE GENERATE(Table1, Table2)
Se devuelve la combinación cruzada de
la primera tabla con estos resultados.
La expresión de la segunda tabla se
evaluará para cada fila de primera tabla.
Devuelve la combinación cruzada de la
GENERATEALL GENERATEALL(Table1, Table2)
primera tabla con estos resultados,
incluidas las filas para las que la
expresión de la segunda tabla está vacía.
Devuelve la media geométrica de la
GEOMEAN GEOMEAN(ColumnName)
referencia de columna correspondiente.
Devuelve la media geométrica de los
GEOMEANX GEOMEANX(Tabla, Expresión)
valores de una expresión en una tabla.
Devuelve el valor mayor de una columna.
MAXA MAXA(ColumnName)
No omite los valores lógicos y el texto.
Devuelve el valor numérico mayor que se
MAXX obtiene al evaluar una expresión para MAXX(Tabla, Expresión)
cada fila de una tabla.
Devuelve el percentil 50 de los valores de
MEDIAN MEDIAN(Columna)
una columna.
Devuelve el percentil 50 de los valores de
MEDIANX MEDIANX(Tabla, Expresión)
una expresión en una tabla.
Devuelve el valor menor de una columna.
MINA MINA(ColumnName)
No omite los valores lógicos y el texto.
Devuelve el valor numérico menor que se
MINX obtiene al evaluar una expresión para MINX(Tabla, Expresión)
cada fila de una tabla.
Devuelve la distribución normal para la
NORM.DIST(X, Media,
NORM.DIST media y desviación estándar
Desv_estándar, Acumulativo)
especificadas.
Devuelve el inverso de la distribución
NORM.INV(Probabilidad, Media,
NORM.INV acumulativa normal para la media y
Desv_estándar)
desviación estándar especificadas.
Devuelve la distribución normal estándar
NORM.S.DIST (tiene una media de cero y una desviación NORM.S.DIST(Z, Acumulativo)
estándar de uno).
Devuelve el inverso distribución
acumulativa normal estándar. Tiene una
NORM.S.INV NORM.S.INV(Probabilidad)
media de cero y una desviación estándar
de uno.
Devuelve el percentil k (inclusive) de los
PERCENTILE.INC PERCENTILE.INC(Columna, K)
valores en una columna.
Devuelve el percentil k (exclusive) de los PERCENTILEX.EXC(Tabla,
PERCENTILEX.EXC
valores de una expresión de una tabla. Expresión, K)
Devuelve el percentil k (inclusive) de los PERCENTILEX.INC(Tabla,
PERCENTILEX.INC
valores de una expresión de una tabla. Expresión, K)
Devuelve la distribución de Poisson. Una
aplicación común de la distribución de
Poisson es predecir el número de eventos POISSON.DIST(X, Media,
POISSON.DIST
en un tiempo específico, como el número Acumulativo)
de automóviles que llegan a una estación
de peaje en 1 minuto.
Devuelve la clasificación de un número en
una columna de números. Si varios
RANK.EQ(Valor, ColumnName,
RANK.EQ valores tienen la misma clasificación, se
[Order])
devuelve la clasificación superior de dicho
conjunto de valores.
Devuelve la clasificación de una expresión
evaluada en el contexto actual de la lista RANKX(Tabla, Expresión, [Valor],
RANKX
de valores para la expresión evaluada por [Order], [Ties])
cada fila de la tabla especificada.
Devuelve una tabla de una sola fila con
ROW nuevas columnas especificadas por las ROW(Nombre1, Expresión1, …)
expresiones DAX.
Devuelve un subconjunto de muestra a
SAMPLE(Tamaño, Tabla,
SAMPLE partir de una expresión de tabla
OrderBy1, [Order1], …)
determinada.
Devuelve una tabla con las columnas SELECTCOLUMNS(Tabla,
SELECTCOLUMNS
seleccionadas de la tabla y las columnas Nombre1, Expresión1, …)
nuevas especificadas por las expresiones
DAX.
SIN Devuelve el seno del ángulo dado. SIN(Número)
Devuelve el seno hiperbólico de un
SINH SINH(Número)
número.
Calcula la desviación estándar a partir del
valor de población total indicado como
STDEV.P STDEV.P(ColumnName)
argumento. Omite los valores lógicos y el
texto.
Estima la desviación estándar basada en
STDEV.S una muestra. Omite los valores lógicos y STDEV.S(ColumnName)
el texto de la muestra.
Estima la desviación estándar basada en
la población total que se obtiene de la
STDEVX.P STDEVX.P(Tabla, Expresión)
evaluación de una expresión por cada fila
de una tabla.
Estima la desviación estándar basada en
una muestra que se obtiene de la
STDEVX.S STDEVX.S(Tabla, Expresión)
evaluación de una expresión por cada fila
de una tabla.
Devuelve la raíz cuadrada de un (número
SQRTPI SQRTPI(Número)
* pi).
SUMMARIZE(Tabla,
Crea un resumen de la tabla de entrada
SUMMARIZE [GroupByColumnName1, …,
agrupado por las columnas especificadas.
[Nombre1], [Expresión1], …)
Devuelve la distribución t de cola
T.DIST T.DIST(X, Grados_de_libertad)
izquierda de Student.
Devuelve la distribución T bilateral de
T.DIST.2T T.DIST.2T(X, Grados_de_libertad)
Student.
Devuelve la distribución t de Student de
T.DIST.RT T.DIST.RT(X, Grados_de_libertad)
cola derecha.
Devuelve el inverso de cola izquierda de T.INV(Probabilidad,
T.INV
la distribución de Student. Grados_de_libertad)
Devuelve el inverso bilateral de la T.INV.2T(Probabilidad,
T.INV.2T
distribución T de Student. Grados_de_libertad)
TAN Devuelve la tangente del ángulo dado. TAN(Número)
Devuelve la tangente hiperbólica de un
TANH TANH(Número)
número.
Devuelve el número determinado de filas
TOPN(N_Value, Tabla,
TOPN superiores en función de una expresión
[OrderBy_Expression1], [Order1])
especificada.
Calcula la varianza según la población
VAR.P total. Omito los valores lógicos y el texto VAR.P(ColumnName)
de la población.
Estima la varianza basada en una
VAR.S muestra. Omite los valores lógicos y el VAR.S(ColumnName)
texto de la muestra.
Estima la varianza a partir de la población
VARX.P total que se obtiene de la evaluación de VARX.P(Tabla, Expresión)
una expresión por cada fila de una tabla.
Estima la varianza basada en una
muestra que se obtiene de la evaluación
VARX.S VARX.S(Tabla, Expresión)
de una expresión por cada fila de una
tabla.
Devuelve la tasa interna de devolución
para una programación de flujo de XIRR(Tabla, Valores, Dates,
XIRR
efectivo que no es necesariamente [Guess])
periódica.
Devuelve el valor neto presente para una XNPV(Tabla, Valores, Dates,
XNPV
programación de flujos de efectivo. Rate)

Categoría: Funciones de Fecha y Hora

Funciones más utilizadas:


Función Descripción Sintaxis
DATE Devuelve la fecha especificada en formato de fecha y hora DATE(Año, Mes, Día)
Devuelve el número de unidades (unidad especificada en DATE(Fecha1, Fecha2,
DATEDIFF
intervalo) entre las dos fechas de entrada Intervalo)
Devuelve la fecha que es el número de meses indicado
EDATE EDATE(StartDate, Meses)
antes o después de la fecha inicial
TODAY Devuelve la fecha actual en formato de fecha y hora. TODAY()
Devuelve un número del 1 al 7 que identifica el día de la WEEKDAY(Fecha,
WEEKDAY
semana de una fecha [ReturnType])
WEEKNUM(Fecha,
WEEKNUM Devuelve un número de semana del año
[ReturnType])
Devuelve el año de una fecha como número entero de
YEAR YEAR(Fecha)
cuatro dígitos

Más funciones en la categoría:

Función Descripción Sintaxis


Devuelve una tabla con una columna de
CALENDAR todas les fechas entre StartDate y CALENDAR(StartDate, EndDate)
EndDate.
Devuelve una tabla con una columna de
CALENDARAUTO fechas calculadas automáticamente a CALENDARAUTO([FiscalYearEndMonth])
partir del modelo.
Convierte una fecha en forma de texto a
DATEVALUE DATEVALUE(DateText)
una fecha en formato de fecha y hora.
Devuelve el número del 1 al 31 que
DAY DAY(Fecha)
representa el día del mes.
Devuelve la fecha que es el número de
EDATE meses indicado antes o después de la EDATE(StartDate, Meses)
fecha inicial.
Devuelve la fecha, en formato de fecha y
hora, del último día del mes antes o
EOMONTH EOMONTH(StartDate, Meses)
después de un número de meses
especificado.
Devuelve la hora como un número de 0
HOUR HOUR(Datetime)
(12:00 a.m.) a 23 (11:00 p.m.).
Devuelve un número del 0 al 59 que
MINUTE MINUTE(Datetime)
representa el minuto.
Devuelve un número del 1 (enero) al 12
MONTH MONTH(Fecha)
(diciembre) que representa el mes.
Devuelve la fecha y la hora actuales en
NOW NOW()
formato de fecha y hora.
Devuelve un número del 0 al 59 que
SECOND SECOND(Datetime)
representa el segundo.
Convierte las horas, los minutos y los
segundos proporcionados como
TIME TIME(Hora, Mínuto, Segundo)
números en una hora en formato de
fecha y hora.
Convierte una hora en formato de texto a
TIMEVALUE TIMEVALUE(TimeText)
una hora en formato de fecha y hora.
Devuelve la fracción del año que
YEARFRAC representa el número de días completos YEARFRAC(StartDate, EndDate, [Base])
entre la fecha_inicial y la fecha_final.

Categoría: Funciones de Texto

Funciones más utilizadas:


Función Descripción Sintaxis
CONCATENATE(Text1,
CONCATENATE Une dos cadenas de texto en una sola
Text2)
Devuelve el número de caracteres especificados desde el LEFT(Texto,
LEFT
principio de una cadena de texto [NumberOfCharacters])
LEN Devuelve el número de caracteres de una cadena de texto LEFT(Texto)
Devuelve el número de caracteres especificados desde el final RIGHT(Texto,
RIGHT
de una cadena de texto [NumberOfCharacters])
SEARCH(FindText,
Devuelve la primera posición de una cadena de texto en otra.
SEARCH WithinText, [StartPosition],
SEARCH no distingue mayúsculas de mayúsculas.
[NotFoundValue])
Reemplaza texto existente por otro nuevo en una cadena de SUBSTITUTE(Texto, OldText,
SUBSTITUTE
texto NewText, [InstanceNumber])

Más funciones en la categoría:

Función Descripción Sintaxis


BLANK Devuelve un espacio en blanco. BLANK()
CODE
Evalúa la expresión para cada fila de la tabla, a CONCATENATEX(Tabla,
CONCATENATEX
concatenación de esos valores en un resultado de Expresión, [Delimitador],
cadena única, separados por el delimitador [OrderBy_Expression1,
especificado. [Order1], …)
Comprueba si dos cadenas de texto son
exactamente iguales y devuelve VERDADERO o
EXACT EXACT(Text1, Text2)
FALSO. IGUAL distingue mayúsculas de
minúsculas.
Devuelve la primera posición de una cadena de FIND(FindText, WithinText,
FIND texto en otra. ENCONTRAR distingue mayúsculas [StartPosition],
de minúsculas. [NotFoundValue])
Redondea un número de decimales especificado y
FIXED(Número,
FIXED devuelve el resultado como texto con comas
[Decimals], [NoCommas])
opcionales.
Convierte un valor en texto con el formato de
FORMAT FORMAT(Valor, Formato)
número especificado.
Convierte todas las letras de una cadena de texto a
LOWER LOWER(Texto)
minúsculas.
Devuelve una cadena de caracteres desde la mitad
MID(Texto, StartPosition,
MID de una cadena de texto, para una posición inicial y
NumberOfCharacters)
una longitud dadas.
REPLACE(OldText,
Reemplaza parte de una cadena de texto por otra StartPosition,
REPLACE
distinta NumberOfCharacters,
NewText)
Repite un texto un determinado número de veces.
REPT(Texto,
REPT Use REPT para llenar una celda con un número de
NumberOfTimes)
instancias cadena de texto.
Quita todos los espacios de una cadena de texto,
TRIM TRIM(Texto)
excepto los espacios individuales entre palabras.
Devuelve el carácter Unicode al que hace referencia
UNICHAR UNICHAR(Número)
el valor numérico correspondiente.
UPPER Convierte una cadena de texto a letras mayúsculas. UPPER(Texto)
Convierte en un número una cadena de texto que
VALUE VALUE(Texto)
representa un número.

Categoría: Funciones de Filtrado

Funciones más utilizadas:


Función Descripción Sintaxis
Devuelve todas las filas de una tabla, o todos los valores de ALL(TableNameOrColumnName,
ALL
una columna, omitiendo los filtros que se hayan aplicado [ColumnName1], …)
CALCULATE(Expresión,
CALCULATE Evalúa una expresión en un contexto modificado por filtros
[Filtrar1], …)
FILTER Devuelve una tabla que se ha filtrado FILTER(Tabla, FilterExpression)
RELATED Devuelve un valor relacionado de otra tabla RELATED(ColumnName)
Más funciones en la categoría:

Función Descripción Sintaxis


ADDMISSINGITEMS([Show
All_ColumnName1], …,
Vuelve a agregar las filas con valores de medidas
ADDMISSINGITEMS Tabla,
vacíos
[GroupBy_ColumnName1],
…, [FilterTable1], …)
Devuelve todas las filas de una tabla excepto las
ALLEXCEPT(TableName,
ALLEXCEPT filas afectadas por los filtros de columna
ColumnName1, …)
especificados.
Devuelve todas las filas excepto las filas en blanco ALLNOBLANKROW(TableN
ALLNOBLANKROW de una tabla, o todos los valores de una columna, ameOrColumnName,
omitiendo los filtros que se pueden haber aplicado. [ColumnName1], …)
Devuelve todas las filas de una tabla, o todos los
valores de una columna omitiendo los filtros que se ALLSELECTED([TableName
ALLSELECTED
hayan aplicado dentro de la consulta, pero OrColumnName])
conservando los filtros externos.
Evalúa una expresión de tabla en un contexto CALCULATETABLE(Tabla,
CALCULATETABLE
modificado por filtros. [Filtrar1], …)
Especifica la dirección del filtrado cruzado que se va
a usar en la evaluación de una expresión DAX. La CROSSFILTER(LeftColumn
CROSSFILTER relación se define con los nombre, como Name, RightColumnName,
argumentos, de las columnas que sirven de CrossFilterType)
extremos.
Devuelve una tabla con una sola columna que
contiene valores distintos (únicos) en una columna,
DISTINCT(ColumnNameOrT
DISTINCT para un argumento de columna. O bien, varias
ableExpr)
columnas con una combinación distinta (única) de
valores, para un argumento de expresión de tabla.
Devuelve el valor de la columna anterior al número
EARLIER(ColumnName,
EARLIER especificado de recorridos de tabla (el valor
[Número])
predeterminado es 1)
Devuelve el valor de la columna para el primer punto
EARLIEST EARLIEST(ColumnName)
en el que había un contexto de fila.
Devuelve True si la tabla o la columna especificada HASONEFILTER(ColumnNa
HASONEFILTER
tiene exactamente un filtro. me)
Devuelve True si solo hay un valor en la columna HASONEVALUE(ColumnNa
HASONEVALUE
especificada. me)
Devuelve True si la tabla o la columna especificada ISCROSSFILTERED(TableN
ISCROSSFILTERED
tiene un filtro cruzado. ameOrColumnName)
Devuelve True si hay filtros directos en la columna
ISFILTERED ISFILTERED(ColumnName)
especificada.
Cambia la semántica de filtrado de la función
KEEPFILTERS KEEPFILTERS(Expresión)
CALCULATE y CALCULATETABLE.
Devuelve las tablas relacionadas filtradas de forma
RELATEDTABLE RELATEDTABLE(Tabla)
que solo se incluyan las filas relacionadas.
Devuelve el valor cuando solo hay un valor en la
SELECTEDVALUE(Column
SELECTEDVALUE columna especificada; de lo contrario, devuelve el
Name, [AlternateResult])
resultado alternativo.
Devuelve una tabla que representa la
SUBSTITUTEWITHINDEX(T
SUBSTITUTEWITHINDEX semicombinación de dos tablas proporcionadas y
abla, Nombre,
para la que el conjunto común de columnas se
reemplaza por una columna de índice de base 0. El SemiJoinIndexTable,
índice se basa en las filas de la segunda tabla Expresión1, [Order1], …)
ordenadas por las expresiones de orden
especificadas.
Especifica una relación existente para usarla en la
evaluación de una expresión DAX. La relación se
USERELATIONSHIP(Colum
USERELATIONSHIP define agregando un nombre, igual que los
nName1, ColumnName2)
argumentos, a las dos columnas que sirven de
extremos.
Devuelve una tabla con una sola columna o una
VALUES(TableNameOrColu
VALUES tabla que contiene los valores distintivos (únicos) de
mnName)
una columna.

Categoría: Funciones de Inteligencia de Tiempo

Funciones más utilizadas:


Función Descripción Sintaxis
Desplaza el conjunto de fechas indicado en un intervalo DATEADD(Dates,
DATEADD
especificado. NumberOfIntervals, Interval)
DATESINPERIOD(Dates,
DATESINPERIOD Devuelve las fechas del periodo especificado StartDate, NumberOfIntervals,
Interval)
DATESYTD(Dates,
DATESYTD Devuelve un conjunto de fechas del año hasta la fecha actual
[YearEndDate])
Evalúa la expresión especificada a lo largo del intervalo que
empieza el primer día del año y termina con la última fecha de TOTALYTD(Expresión, Dates,
TOTALYTD
la columna de fecha especificada después de aplicar los filtros [Filtrar], [YearEndDate])
especificados

Más funciones en la categoría:

Función Descripción Sintaxis


Evalúa de la expresión especificada
para la fecha correspondiente al CLOSINGBALANCEMONTH(Expresión,
CLOSINGBALANCEMONTH
final del mes actual después de Dates, [Filtrar])
aplicar los filtros especificados.
Evalúa de la expresión especificada
para la fecha correspondiente al CLOSINGBALANCEQUARTER(Expresión,
CLOSINGBALANCEQUARTER
final del trimestre actual después Dates, [Filtrar])
de aplicar los filtros especificados.
Evalúa de la expresión especificada
para la fecha correspondiente al CLOSINGBALANCEYEAR(Expresión,
CLOSINGBALANCEYEAR
final del año actual después de Dates, [Filtrar], [YearEndDate])
aplicar los filtros especificados.
Devuelve las fechas entre dos DATESBETWEEN(Dates, StartDate,
DATESBETWEEN
fechas dadas. EndDate)
Devuelve un conjunto de fechas del
DATESMTD DATESMTD(Dates)
mes hasta la fecha actual.
Devuelve un conjunto de fechas del
DATESQTD DATESQTD(Dates)
trimestre hasta la fecha actual.
ENDOFMONTH Devuelve el final del mes. ENDOFMONTH(Dates)
ENDOFQUARTER Devuelve el final del trimestre. ENDOFQUARTER(Dates)
ENDOFYEAR Devuelve el final del año. ENDOFYEAR(Dates, [YearEndDate])
Devuelve la primera fecha que no
FIRSTDATE FIRSTDATE(Dates)
está en blanco.
Devuelve el primer valor de la
columna para el que la expresión FIRSTNONBLANK(ColumnName,
FIRSTNONBLANK
tiene un valor que no está en Expresión)
blanco.
Devuelve la última fecha que no
LASTDATE LASTDATE(Dates)
está en blanco.
Devuelve el último valor de la
columna para el que la expresión LASTNONBLANK(ColumnName,
LASTNONBLANK
tiene un valor que no está en Expresión)
blanco.
NEXTDAY Devuelve el día siguiente. NEXTDAY(Dates)
NEXTMONTH Devuelve el mes siguiente. NEXTMONTH(Dates)
NEXTQUARTER Devuelve el trimestre siguiente. NEXTQUARTER(Dates, [YearEndDate])
NEXTYEAR Devuelve el año siguiente. NEXTYEAR(Dates, [YearEndDate])
Evalúa la expresión especificada
para la fecha correspondiente al OPENINGBALANCEMONTH(Expresión,
OPENINGBALANCEMONTH
final del mes anterior después de Dates, [Filtrar])
aplicar los filtros especificados.
Evalúa la expresión especificada
para la fecha correspondiente al OPENINGBALANCEQUARTER(Expresión,
OPENINGBALANCEQUARTER
final del trimestre anterior después Dates, [Filtrar])
de aplicar los filtros especificados.
Evalúa la expresión especificada
para la fecha correspondiente al OPENINGBALANCEYEAR(Expresión,
OPENINGBALANCEYEAR
final del año anterior después de Dates, [Filtrar], [YearEndDate])
aplicar los filtros especificados.
Devuelve un período paralelo de
PARALLELPERIOD(Dates,
PARALLELPERIOD fechas según el conjunto de fechas
NumberOfIntervals, Interval)
dado y un intervalo especificado.
PREVIOUSYEAR Devuelve el año anterior. PREVIOUSYEAR(Dates, [YearEndDate])
Devuelve un conjunto de fechas en
SAMEPERIODLASTYEAR SAMEPERIODLASTYEAR(Dates)
la selección actual del año anterior.
STARTOFMONTH Devuelve el inicio del mes. STARTOFMONTH(Dates)
STARTOFQUARTER Devuelve el inicio del trimestre. STARTOFQUARTER(Dates)
STARTOFYEAR Devuelve el inicio del año. STARTOFYEAR(Dates, [YearEndDate])
Evalúa expresión especificada a lo
largo del intervalo que empieza al
principio del mes y termina con la
TOTALMTD TOTALMTD(Expresión, Dates, [Filtrar])
última fecha de la columna de
fecha especificada después de
aplicar los filtros especificados.
Evalúa la expresión especificada a
TOTALQTD lo largo del intervalo que empieza TOTALQTD(Expresión, Dates, [Filtrar])
el primer día del trimestre y termina
con la última fecha de la columna
de fecha especificada después de
aplicar los filtros especificados.

Categoría: Funciones de Información

Funciones más utilizadas:


Función Descripción Sintaxis
Comprueba sin un valor está en blanco y devuelve TRUE o
ISBLANK ISBLANK(Valor)
FALSE
ISERROR Comprueba sin un valor es un error y devuelve TRUE o FALSE ISERROR(Valor)
Comprueba sin un valor es un número y devuelve TRUE o
ISNUMBER ISNUMBER(Valor)
FALSE
ISTEXT Comprueba sin un valor es un texto y devuelve TRUE o FALSE ISTEXT(Valor)

Más funciones en la categoría:

Función Descripción Sintaxis


Devuelve TRUE si hay al menos una fila
CONTAINS(Tabla, ColumnName1,
CONTAINS con valores especificados en todas las
Valor1, …)
columnas.
Devuelve el valor de la propiedad
CUSTOMDATA CustomData de la cadena de conexión, si CUSTOMDATA()
está definida; en caso contrario BLANK().
Devuelve TRUE si el número es par o
ISEVEN ISEVEN(Número)
FALSE si el número es impar.
Devuelve un valor “true” si la columna
ISINSCOPE especificada es el nivel de una jerarquía de ISINSCOPE(ColumnName)
niveles.
Comprueba si un valor es lógico (TRUE o
ISLOGICAL ISLOGICAL(Valor)
FALSE) y devuelve TRUE o FALSE.
Comprueba si un valor no es de texto (las
ISNONTEXT celdas en blanco no son texto) y devuelve ISNONTEXT(Valor)
TRUE o FALSE.
IsOnOrAfter es una función booleana que
emula el comportamiento de la cláusula
ISONORAFTER(Value11, Value21,
ISONORAFTER Start At y devuelve true para una fila que
[Order1], …)
cumple todas las condiciones mencionadas
como parámetros en esta función.
LOOKUPVALUE(Result_ColumnName,
LOOKUPVALUE Recupera un valor de una tabla. Search_ColumnName1,
Search_Value1)
Devuelve el nombre de dominio y el
USERNAME nombre de usuario de la conexión actual, USERNAME()
con el formato: domino\nombre de usuario.
Categoría: Funciones Primarias y Secundarias

Funciones de la categoría:
Función Descripción Sintaxis
Devuelve una cadena que contiene una lista delimitada de
PATH(ID_ColumnName,
PATH identificadores, empezando por la parte superior o raíz de
Parent_ColumnName)
una jerarquía y terminando con el identificador especificado
Devuelve TRUE si el elemento especificado existe en la PATHCONTAINS(Ruta de
PATHCONTAINS
ruta de acceso especificada acceso, Elemento)
Devuelve el enésimo elemento de la lista delimitada creada PATHITEM(Ruta de acceso,
PATHITEM
por la función Ruta Posición, [Tipo])
Devuelve el enésimo elemento de la lista delimitada creada
PATHITEMREVERSE(Ruta
PATHITEMREVERSE por la función Ruta, contando hacia atrás desde el último
de acceso, Posición, [Tipo])
elemento de la ruta de acceso
Devuelve el número de elementos de una cadena de ruta
de acceso determinada. Esta función devuelve 1 para la PATHLENGTH(Ruta de
PATHLENGTH
ruta generada para un identificador en la parte superior o acceso)
raíz de una jerarquía.

Categoría: Otras Funciones

Funciones más utilizadas:


Función Descripción Sintaxis
DATATABLE(nombre1, tipo1,
DATATABLE Devuelve una tabla con datos definidos en línea
…, datos)
GROUPBY(Tabla,
Crea un resumen de la tabla de entrada agrupado por las
GROUPBY [GroupBy_ColumnName1], …,
columnas especificadas
[Nombre1], [Expresión1], …)

Más funciones en la categoría:

Función Descripción Sintaxis


Genera un error
ERROR ERROR(ErrorText)
especificado por el usuario.
Devuelve las filas de la tabla
del lado izquierdo que no
EXCEPT EXCEPT(LeftTable, RightTable)
aparece en la tabla de la
derecha.
Devuelve una tabla con una GENERATESERIES(StartValue, EndValue,
GENERATESERIES
columna, rellena con valores [IncrementValue])
secuenciales de principio a
fin.
Devuelve las filas de la tabla
de la izquierda que
INTERSECT INTERSECT(LeftTable, RightTable)
aparecen en la tabla de la
derecha.
Devuelve true si la tabla
ISEMPTY especificada o la expresión ISEMPTY(Tabla)
de tabla es Empty.
Combina la tabla izquierda
con la tabla derecha usando
NATURALINNERJOIN NATURALINNERJOIN(LeftTable, RightTable)
semántica de combinación
interna.
Une la tabla izquierda con la
tabla derecha usando la
NATURALLEFTOUTERJOIN NATURALLEFTOUTERJOIN(LeftTable, RightTable)
semántica de combinación
externa izquierda.
Crea una tabla de resumen
SUMMARIZECOLUMNS([GroupBy_ColumnName1],
SUMMARIZECOLUMNS para los totales solicitados
…, [FilterTable1], …, [Nombre1], [Expresión1], …)
de un conjunto de grupos.
Trata las columnas de la
tabla de entrada como
columnas de otras tablas.
TREATAS Para cada columna, se TREATAS(Expresión, ColumnName1, …)
filtran los valores que no
figuran en su respectiva
columna de salida.
Devuelve la unión de las dos
UNION tablas cuyas columnas UNION(Tabla1, …)
coinciden.

Notas Finales
- Cualquier comentario me lo puedes hacer llegar en esta página:
https://www.udemy.com/user/InstructorDiego

- Los iteradores “X” son funciones muy poderosas que son retadoras de
entender en un principio. Ejemplos de estas funciones son: SUMX,
AVERAGEX, COUNTX. Si quieres comprenderlas a fondo, te recomiendo
que ingreses a este link: https://www.udemy.com/curso-completo-power-
bi/?couponCode=CS_DAX

- Los parámetros de algunas funciones se encuentran entre corchetes []. Esto


significa que es un parámetro opcional, por lo que no es necesario agregar
un valor en esa posición para que la función haga su trabajo. Si se agrega,
sin embargo, podrás controlar de mejor manera a la función.

También podría gustarte