Eventos
Únase a nosotros en FabCon Vegas
31 mar, 23 - 2 abr, 23
El último evento dirigido por la comunidad de Microsoft Fabric, Power BI, SQL y AI. 31 de marzo al 2 de abril de 2025.
Regístrate hoyEste explorador ya no se admite.
Actualice a Microsoft Edge para aprovechar las características y actualizaciones de seguridad más recientes, y disponer de soporte técnico.
El lenguaje DAX (Expresiones de análisis de datos) usa operadores para crear expresiones que comparan valores, realizan cálculos aritméticos o trabajan con cadenas.
Existen cuatro tipos distintos de operadores de cálculo: aritméticos, de comparación, de concatenación de texto y lógicos.
Use los siguientes operadores aritméticos para realizar operaciones matemáticas básicas (como sumas, restas o multiplicaciones), para combinar números y para producir resultados numéricos.
Operadores aritméticos | Significado | Ejemplo |
---|---|---|
+ (signo más) | Suma | 3+3 |
– (signo menos) | Resta o inversión del signo | 3–1–1 |
* (asterisco) | Multiplicación | 3*3 |
/ (barra diagonal) | División | 3/3 |
^ (símbolo de intercalación) | Exponenciación | 16^4 |
Nota
El signo más puede funcionar como operador binario y como operador unario. Un operador binario requiere números en ambos lados del operador y realiza la suma. Cuando se usan valores en una fórmula DAX a ambos lados del operador binario, DAX intenta convertir los valores a tipos de datos numéricos si aún no son números. En cambio, el operador unario se puede aplicar a cualquier tipo de argumento. El signo más no afecta al tipo o al valor y simplemente se pasa por alto, mientras que el operador menos crea un valor negativo, si se aplica a un valor numérico.
Puede comparar dos valores con los siguientes operadores. Cuando se comparan dos valores con estos operadores, el resultado es un valor lógico, ya sea TRUE o FALSE.
Operadores de comparación | Significado | Ejemplo |
---|---|---|
= | Igual a | [Region] = "USA" |
== | Estrictamente igual a | [Region] == "USA" |
> | Mayor que | [Sales Date] > "Jan 2009" |
< | Menor que | [Sales Date] < "Jan 1 2009" |
>= | Mayor o igual que | [Amount] >= 20000 |
<= | Menor o igual que | [Amount] <= 100 |
<> | No igual a | [Region] <> "USA" |
Todos los operadores de comparación, excepto ==, tratan BLANK como equivalente al número 0, una cadena vacía "", DATE(1899, 12, 30), o FALSE. Como resultado, [Column] = 0 será true cuando el valor de [Column] sea 0 o BLANK. Por el contrario, [Column] == 0 solo es true cuando el valor de [Column] es 0.
Use el signo Y comercial (&) para unir, o concatenar, dos o más cadenas de texto a fin de generar un único fragmento de texto.
Operador de texto | Significado | Ejemplo |
---|---|---|
& (y comercial) | Conecta, o concatena, dos valores para generar un valor de texto continuo. | [Region] & ", " & [City] |
Use los operadores lógicos (&&) y (||) para combinar expresiones y generar un solo resultado.
Operador de texto | Significado | Ejemplos |
---|---|---|
&& (doble Y comercial) | Crea una condición AND entre dos expresiones que tienen ambas un resultado booleano. Si ambas expresiones devuelven TRUE, la combinación de las expresiones también devuelve TRUE; de lo contrario, la combinación devuelve FALSE. | ([Region] = "France") && ([BikeBuyer] = "yes")) |
|| (doble barra vertical) | Crea una condición OR entre dos expresiones lógicas. Si alguna de las expresiones devuelve TRUE, el resultado es TRUE; solo cuando ambas expresiones son FALSE, el resultado es FALSE. | (([Region] = "France") || ([BikeBuyer] = "yes")) |
IN | Crea una condición OR lógica entre cada fila que se compara con una tabla. Nota: En la sintaxis del constructor de tabla se emplean llaves. | 'Product'[Color] IN { "Red", "Blue", "Black" } |
En algunos casos, el orden en el que se realiza el cálculo puede afectar al valor devuelto, de ahí que sea importante comprender cómo se determina el orden y cómo este se puede cambiar para obtener los resultados deseados.
Una expresión evalúa los operadores y los valores en un orden específico. Todas las expresiones comienzan siempre con un signo igual (=). Este signo igual indica que los caracteres tras él constituyen una expresión.
Después del signo igual están los elementos que se van a calcular (los operandos), que se separan con operadores de cálculo. Las expresiones siempre se leen de izquierda a derecha, pero el orden en el que los elementos se agrupan se puede controlar en cierto grado mediante el uso de paréntesis.
Si se combinan varios operadores en una misma fórmula, las operaciones se ordenan según la siguiente tabla. Si los operadores tienen el mismo valor de precedencia, se ordenan de izquierda a derecha. Por ejemplo, si una expresión contiene un operador de multiplicación y división, se evalúan en el orden en que aparecen en la expresión, de izquierda a derecha.
Operador | Descripción |
---|---|
^ | Exponenciación |
– | Inversión del signo (como en –1) |
* y / | Multiplicación y división |
+ y – | Suma y resta |
& | Conecta dos cadenas de texto (concatenación) |
=,==,<,>,<=,>=,<>,IN | De comparación |
NOT | NOT (operador unario) |
Para cambiar el orden de evaluación, debe incluir entre paréntesis la parte de la fórmula que deba calcularse en primer lugar. Por ejemplo, la siguiente fórmula da como resultado 11 porque la multiplicación se calcula antes que la suma. La fórmula multiplica 2 por 3 y, tras ello, suma 5 al resultado.
=5+2*3
Por el contrario, si se usan paréntesis para cambiar la sintaxis, el orden se cambia de modo que 5 y 2 se suman y el resultado de esto se multiplica por 3, dando como resultado 21.
=(5+2)*3
En el siguiente ejemplo, los paréntesis que rodean la primera parte de la fórmula hacen que el cálculo evalúe la expresión (3 + 0.25)
en primer lugar y, luego, divida el resultado entre el resultado de la expresión (3 - 0.25)
.
=(3 + 0.25)/(3 - 0.25)
En el siguiente ejemplo, el operador de exponenciación se aplica en primer lugar, según las reglas de precedencia de operadores, y, tras ello, se aplica el operador de inversión del signo. El resultado de esta expresión es -4.
=-2^2
Para garantizar que el operador de inversión del signo se aplica primero al valor numérico, se pueden usar paréntesis para controlar los operadores, como se muestra en el siguiente ejemplo. El resultado de esta expresión es 4.
= (-2)^2
DAX controla y compara fácilmente varios tipos de datos, de forma muy similar a como lo hace Microsoft Excel, pero el motor de cálculo subyacente se basa en SQL Server Analysis Services, con lo cual proporciona las características avanzadas adicionales de los almacenes de datos relacionales, incluida una mayor compatibilidad con los tipos de fecha y hora. Por lo tanto, es posible que, en algunos casos, los resultados de los cálculos o el comportamiento de las funciones no sean los mismos que en Excel. Además, DAX admite más tipos de datos que Excel. En esta sección se describen las principales diferencias.
En general, los dos operandos de los lados izquierdo y derecho de cualquier operador deben ser del mismo tipo de datos. Si los tipos de datos son diferentes, DAX los convertirá a un tipo de datos común para aplicar el operador en algunos casos:
Por ejemplo, supongamos que tiene dos números que quiere combinar. Un número es el resultado de una fórmula, como =[Price] * .20
, y dicho resultado puede contener muchos decimales, mientras que el otro número es un entero que se ha proporcionado como valor de cadena.
En este caso, DAX convertirá ambos números en números reales en formato numérico, usando el formato numérico más grande que pueda almacenar ambos tipos de números. Tras ello, DAX aplicará la multiplicación.
Dependiendo de la combinación de tipos de datos, es posible que la coerción de tipos no pueda aplicarse a las operaciones de comparación. Para obtener una lista completa de los tipos de datos admitidos en DAX, consulte Tipos de datos admitidos en los modelos tabulares y Tipos de datos en Power BI Desktop.
Los tipos Integer, Real Number, Currency, Date/time y Blank se consideran numéricos con fines de comparación. Blank evalúa como cero cuando se realiza una comparación. En las operaciones de comparación se pueden usar las siguientes combinaciones de tipos de datos.
Tipo de datos del lado izquierdo | Tipo de datos del lado derecho |
---|---|
Numérica | Numérica |
Booleano | Boolean |
String | Cadena |
Cualquier otra combinación de comparaciones de tipos de datos devolverá un error. Por ejemplo, una fórmula como ="1" > 0 devuelve un error que indica que las operaciones de comparación DAX no permiten la comparación de valores de tipo Text con valores de tipo Integer.
Tipos de datos usados en DAX | Tipos de datos usados en Excel |
---|---|
Números (I8, R8) | Números (R8) |
Cadena | Cadena |
Booleano | Boolean |
DateTime | Variante |
Moneda | Moneda |
El orden de precedencia de las operaciones en las fórmulas DAX es básicamente el mismo que el de Microsoft Excel, pero algunos operadores de Excel no se admiten, como, por ejemplo, el de porcentaje. Tampoco se admiten intervalos.
Por lo tanto, siempre que copie y pegue fórmulas de Excel, asegúrese de revisarla cuidadosamente, ya que es posible que algunos operadores o elementos de las fórmulas no sean válidos. Cuando tenga alguna duda sobre el orden en el que se realizan las operaciones, se recomienda usar paréntesis para controlar el orden de las operaciones y acabar con cualquier ambigüedad en el resultado.
Eventos
Únase a nosotros en FabCon Vegas
31 mar, 23 - 2 abr, 23
El último evento dirigido por la comunidad de Microsoft Fabric, Power BI, SQL y AI. 31 de marzo al 2 de abril de 2025.
Regístrate hoyCursos
Módulo
Escritura de fórmulas de DAX para modelos de Power BI Desktop - Training
En este módulo, aprenderá a escribir fórmulas de DAX para crear tablas calculadas, columnas calculadas y medidas, que son diferentes tipos de cálculos de modelos. Además, aprenderá a escribir fórmulas de DAX y a darles formato; estas fórmulas constan de expresiones que usan funciones, operadores, referencias a objetos de modelo, constantes y variables.
Certificación
Microsoft Certified: Power BI Data Analyst Associate - Certifications
Demostrar métodos y procedimientos recomendados que se alinean con los requisitos empresariales y técnicos para modelar, visualizar y analizar datos con Microsoft Power BI.