Gå till huvudinnehåll

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.

Anteckning om informationElementfunktionerna, P() och E(), kan endast användas på en naturlig uppsättning. Det vill säga, en uppsättning med poster som definieras genom ett enkelt urval. Till exempel kan den uppsättning som anges med {1-$} inte alltid definieras genom urval och är därför inte en naturlig uppsättning. Användning av dessa funktioner med icke-naturliga uppsättningar kan ge upphov till oväntade resultat.

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.