Operadores (sintaxis MDX)

En las Expresiones Multidimensionales (MDX), los operadores permiten realizar las siguientes acciones:

  • Cambiar los datos, ya sea de forma permanente o temporal.

  • Busca valores u objetos que cumplan una condición especificada.

  • Implementa una decisión entre valores u expresiones.

  • Prueba condiciones específicas antes de iniciar o comprometer una transacción, o antes de ejecutar sentencias concretas.

MDX admite los operadores listados en la siguiente tabla:

Para realizar este tipo de operación Uso
Asigna un valor a una variable, o asocia una columna de conjunto de resultados con un alias. Operadores de asignación
Suma, resta, multiplicación, división. Operadores aritméticos
Prueba la veracidad de una condición, como AND, OR, NOT y XOR. Operadores bit a bit
Compara un valor con otro valor o expresión. Operadores de comparación
Combina permanentemente o temporalmente dos cuerdas en una sola cuerda. Operadores de concatenación
Combina de forma permanente o temporal dos expresiones conjuntas en un solo conjunto. Operadores de conjunto
Realiza una operación sobre un operando. Operadores unarios

Nota:

En consultas, cualquiera que pueda ver los datos en el cubo que se usarán con algún tipo de operador puede realizar operaciones. Sin embargo, necesitas los permisos adecuados antes de poder cambiar los datos con éxito.

Cuando se utilizan múltiples operadores, el orden en que MDX evalúa los operadores es importante. De manera similar, el usuario de operadores puede requerir que un tipo de dato se convierta en otro tipo de datos antes de que los operadores puedan ser evaluados.

Evaluación de expresiones complejas

Puedes construir una expresión usando operadores para combinar varias expresiones más pequeñas. En estas expresiones complejas, MDX evalúa los operadores en orden basándose en la definición de precedencia de operador utilizada por los Servicios de Análisis. MDX ejecuta operadores con precedencia superior antes que operadores con precedencia inferior.

Comprensión de la precedencia del operador

La siguiente lista muestra la precedencia del operador, de mayor a menor. Los operadores en la misma línea tienen precedencia igual y se evalúan de izquierda a derecha salvo que se les imponga lo contrario entre paréntesis:

  • IS

  • :

  • ^

  • /, *

  • +, -

  • <>, >=, =, <=, >, <

  • NOT

  • AND

  • XOR

  • OR

Para más información sobre los operadores en MDX, consulte la Referencia de Operadores de MDX (MDX).

Determinación de los resultados

Cuando combinas expresiones simples para formar una expresión compleja, las reglas para los operadores combinadas con las reglas de precedencia de tipos de datos determinan el tipo de dato del valor resultante.

Si el resultado es un carácter o valor Unicode, las reglas para los operadores combinadas con las reglas de precedencia de colocación determinan la colocación del resultado. Para más información sobre las recopilaciones, consulte Lenguajes y Compilaciones (Servicios de Análisis).

También existen reglas que determinan la precisión, escala y longitud del resultado basándose en la precisión, escala y longitud de las expresiones simples.

Conversión de tipos de datos

MDX convierte implícitamente un objeto a otro tipo cuando ese objeto se usa en una expresión que requiere otro tipo. La siguiente tabla define las reglas de conversión para cada objeto.

Tipo original Tipo necesario Conversion
Level Establecer <level.members>
Hierarchy Miembro <jerarquía.defaultmember>
Miembro Tuple (<Miembro>)
Tuple Miembro <tuple.item>(0)
Tuple Escalar <tuple.value>