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.
Examples and results:
Exempel | Resultat |
---|---|
sum( {$<Customer = P({1<Product={'Shoe'}>} Customer)>} Sales ) |
Returnerar försäljningen för det aktuella urvalet, men endast de kunder som någon gång 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 utelämnas i elementfunktionen returnerar funktionen de möjliga värdena för fältet som angetts i den yttre tilldelningen. |
sum( {$<Customer = P({1<Product={'Shoe'}>} Supplier)>} Sales ) |
Returnerar försäljningen för det aktuella urvalet, men endast de kunder som någon gång har levererat produkten ”Shoe”, d.v.s. kunden är även leverantör. 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 urvalet, men endast de kunder som aldrig 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. |