Set-modificaties met set-operatoren
Set-operatoren worden gebruikt voor het opnemen, uitsluiten of het doorkruisen van verschillende elementsets. Ze combineren de verschillende methoden voor het definiëren van elementsets.
De operatoren zijn gelijk aan de operatoren die voor set-id's worden gebruikt.
Operator | Beschrijving |
---|---|
+ | Samenvoegen. Deze binaire bewerking retourneert een set die bestaat uit de records of elementen die horen bij een van de twee set-operanden. |
- | Uitsluiten. Deze binaire bewerking retourneert een set records of elementen die horen bij de eerste maar niet bij de andere van de twee set-operanden. Daarnaast levert het de complementerende set op als het wordt gebruikt als unaire operator. |
* | Doorsnede. Deze binaire bewerking retourneert een set die bestaat uit de records of elementen die horen bij beide set-operanden. |
/ | Symmetrisch verschil (XOR). Deze binaire bewerking retourneert een set die bestaat uit de records of elementen die horen bij een van de twee set-operanden, maar niet bij beide set-operanden. |
De volgende twee modificaties definiëren bijvoorbeeld dezelfde set met veldwaarden:
-
<Year = {1997, "20*"}>
-
<Year = {1997} + {"20*"}>
Beide uitdrukkingen selecteren 1997 en de jaren die beginnen met 20. In andere woorden: dit is de samenvoeging van de twee voorwaarden.
Bij set-operatoren kunnen complexere definities worden gebruikt. Bijvoorbeeld:
<Year = {1997, "20*"} - {2000}>
Met deze uitdrukking worden dezelfde jaren als hierboven geselecteerd, maar wordt het jaar 2000uitgesloten.
Ga voor meer informatie naar Set-operatoren.
Voorbeelden: Diagramuitdrukkingen voor set-modificaties met set-operatoren
Voorbeelden | Resultaten |
---|---|
sum( {$<Product = Product + {OurProduct1} – {OurProduct2} >} Sales ) | Retourneert de verkoop voor de huidige selectie, maar met het product “OurProduct1” toegevoegd aan de lijst van geselecteerde producten en “OurProduct2” hieruit verwijderd. |
sum( {$<Year = Year + ({“20*”,1997} – {2000}) >} Sales ) |
Retourneert de verkoop voor de huidige selectie, maar met extra selecties in het veld “Year”: 1997 en alle jaren die beginnen met “20”, maar niet 2000. Opmerking: als 2000 in de huidige selectie is opgenomen, blijft dit jaar nog opgenomen na de modificatie. |
sum( {$<Year = (Year + {“20*”,1997}) – {2000} >} Sales ) |
Retourneert bijna hetzelfde als hierboven, maar hier wordt het jaar 2000 uitgesloten, ook als het in de huidige selectie is opgenomen. Het voorbeeld laat zien dat het gebruik van haakjes om een volgorde aan te geven van groot belang kan zijn. |
sum( {$<Year = {“*”} – {2000}, Product = {“*bearing*”} >} Sales ) |
Retourneert de verkoop voor de huidige selectie, maar met een nieuwe selectie in “Year”: alle jaren behalve 2000 en alleen voor producten die de tekenreeks ‘lager’ bevatten. |