Data fields can be loaded so that they contain real value, NULL values or a mixture of both.
A set expression based aggregation of field including real values return expected an accurate values.
Set expression over a field with only NULL values return an unexpected result. The set modifier is ignored, and the aggregation is performed on a larger data set than expected.
The reason for the failed set expression is the fact that the loaded field contains only NULL values.
A selection is applied so that both field F2 and F3 have only NULL values in the current data set.
Even if F2 only has NULL values in the current data set, the set expression works as expected. This proves that the issue is not related to NULL values in the current data set. The failing set expression is only related to field that are loaded with only NULL values.
The root cause of the behavior is product optimizations in the way data and symbols are generated and stored during load.
There is no current plan to change this behavior, since NULL fields are not a reasonable expected data structure.
It is strongly recommended to never load field that only contains NULL values, since this data would have no logical meaning.
If the field represents a flag to indicate something, it is recommended to instead load this with boolean values (true or false) or numerical value.