Modyfikatory zestawów używające przypisania z niejawnymi operatorami zestawów
Notacja ta umożliwia definiowanie nowych selekcji z odrzuceniem bieżącej selekcji w danym polu. Jeśli jednak selekcja ma bazować na bieżącej selekcji w danym polu, ale z dodanymi wartościami pola, można zastosować na przykład modyfikator w postaci <Year = Year + {2007, 2008}>. Równoważny zapis skrócony to <Year += {2007, 2008}>, czyli z użyciem operatora przypisania z niejawną sumą. W analogiczny sposób można definiować niejawne przecięcia, wykluczenia i różnice symetryczne, używając odpowiednio operatorów „*=”, „–=” i „/=”.
Przykłady:
Przykład | Wynik |
---|---|
sum( {$<Product += {OurProduct1, OurProduct2} >} Sales ) |
Zwraca wartość sprzedaży dla bieżącej selekcji, ale przy użyciu operatora niejawnej sumy dodaje do listy wybranych produktów produktyOurProduct1 i OurProduct2. |
sum( {$<Year += {“20*”,1997} – {2000} >} Sales ) |
Zwraca wartość sprzedaży dla bieżącej selekcji, ale przy użyciu operatora niejawnej sumy dodaje liczbę lat w selekcji: 1997 i wszystkie lata zaczynające się na „20”, ale nie sam rok 2000. Jeśli jednak rok 2000 jest uwzględniony w bieżącej selekcji, to po zastosowaniu modyfikacji będzie nadal uwzględniony. Działa tak samo jak wyrażenie <Year=Year + ({“20*”,1997}–{2000})>. |
sum( {$<Product *= {OurProduct1} >} Sales ) |
Zwraca wartość sprzedaży dla bieżącej selekcji, ale tylko dla części wspólnej aktualnie wybranych produktów i produktu OurProduct1. |