Set-modifierare med implicita fältvärdesdefinitioner
Nedan beskrivs hur man definierar en uppsättning fältvärden med hjälp av en nästlad uppsättningsdefinition.
I sådana fall, måste man använda elementfunktionerna P() och E(), som representerar en uppsättning element med möjliga värden respektive de uteslutna värdena i ett fält. Inom parenteserna är det möjligt att ange ett set-uttryck och ett fält, exempelvis P({1} Customer). Dessa funktioner kan inte användas i andra uttryck.
Exempel:
Exempel | Resultat |
---|---|
sum( {$<Customer = P({1<Product={‘Shoe’}>} Customer)>} Sales ) |
Returnerar försäljningen för det aktuella valet, men endast de kunder som någonsin har köpt produkten ”Shoe”. Elementfunktionen P( ) returnerar här en lista över möjliga kunder; de kunder som är inbegripna i urvalet "Shoe" i fältet Product. |
sum( {$<Customer = P({1<Product={‘Shoe’}>})>} Sales ) |
Enligt ovan. Om fältet i elementfunktionen utelämnas returnerar funktionen de möjliga värdena från fältet som angetts i den yttre tilldelningen. |
sum( {$<Customer = P({1<Product={‘Shoe’}>} Supplier)>} Sales ) |
Returnerar försäljningen för det aktuella valet, men endast de kunder som någonsin har levererat produkten ”Shoe”. Elementfunktionen P( ) returnerar här en lista över möjliga leverantörer; de kunder som är inbegripna i urvalet "Shoe" i fältet Product. Listan över leverantörer används sedan som ett urval i fältet Customer. |
sum( {$<Customer = E({1<Product={‘Shoe’}>})>} Sales ) |
Returnerar försäljningen för det aktuella valet, men endast de kunder som någonsin har köpt produkten "Shoe". Elementfunktionen E() returnerar här en lista över uteslutna kunder; de kunder som valts bort i och med urvalet "Shoe" i fältet Product. |