Operators (MDX-syntaxis)

In Multidimensional Expressions (MDX) kun je met operatoren de volgende acties uitvoeren:

  • Verander data, permanent of tijdelijk.

  • Zoek naar waarden of objecten die aan een bepaalde voorwaarde voldoen.

  • Voer een beslissing uit tussen waarden of uitdrukkingen.

  • Test op specifieke voorwaarden voordat je een transactie start of uitvoert, of voordat je specifieke instructies uitvoert.

MDX ondersteunt de operatoren die in de volgende tabel zijn vermeld:

Om dit type operatie uit te voeren Gebruik
Kent een waarde toe aan een variabele, of koppelt een kolom met een alias aan een resultaatset. toewijzingsoperatoren
Optellen, aftrekken, vermenigvuldigen, delen. Rekenkundige operatoren
Test op de waarheid van een voorwaarde, zoals AND, OF, NOT en XOR. Bitwise Operators
Vergelijk een waarde met een andere waarde of een uitdrukking. Vergelijkingsoperatoren
Combineer twee snaren permanent of tijdelijk tot één snaar. Concatenatie-operatoren
Ofwel permanent of tijdelijk twee set-expressies combineren tot één set. Operators instellen
Voert een bewerking uit op één operand. Unieke Operatoren

Note

In queries kan iedereen die de gegevens in de kubus kan zien die met een bepaald type operator gebruikt moet worden, bewerkingen uitvoeren. Je hebt echter de juiste rechten nodig voordat je de gegevens succesvol kunt wijzigen.

Bij het gebruik van meerdere operatoren is de volgorde waarin MDX de operatoren evalueert belangrijk. Evenzo kan de gebruiker van operatoren eisen dat één datatype wordt omgezet in een ander datatype voordat de operators geëvalueerd kunnen worden.

Complexe expressies evalueren

Je kunt een expressie bouwen door operatoren te gebruiken om verschillende kleinere expressies te combineren. In deze complexe expressies evalueert MDX de operatoren in volgorde op basis van de definitie van operatorprioriteit die door Analysis Services wordt gebruikt. MDX voert operatoren met hogere prioriteit uit voordat operators met lagere prioriteit worden uitgevoerd.

Inzicht in Operatorprioriteit

De volgende lijst toont de operatorprioriteit, van hoogste naar laagste. Operatoren in dezelfde lijn zijn gelijk in prioriteit en worden van links naar rechts geëvalueerd, tenzij anders verplicht door haakjes:

  • IS

  • :

  • ^

  • /, *

  • +, -

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

  • NOT

  • AND

  • XOR

  • OR

Voor meer informatie over operatoren in MDX, zie MDX Operator Reference (MDX).

Resultaten bepalen

Wanneer je eenvoudige expressies combineert om een complexe expressie te vormen, bepalen de regels voor operatoren samen met de regels voor datatype-precedentie het datatype van de resulterende waarde.

Als het resultaat een teken of Unicode-waarde is, bepalen de regels voor de operatoren gecombineerd met de regels voor de rangrangering de collatie van het resultaat. Voor meer informatie over collaties, zie Talen en Collaties (Analysediensten).

Er zijn ook regels die de precisie, schaal en lengte van het resultaat bepalen op basis van de precisie, schaal en lengte van de eenvoudige uitdrukkingen.

Gegevenstypen converteren

MDX converteert impliciet een object naar een ander type wanneer dat object wordt gebruikt in een uitdrukking die een ander type vereist. De volgende tabel definieert de conversieregels voor elk object.

Oorspronkelijk type Type nodig Conversion
Niveau Set <level.leden>
Hierarchy Lid <hiërarchie.defaultmember>
Lid Tupel (<Lid>)
Tupel Lid <tuple.item>(0)
Tupel Scalaire <tuple.value>