- A function can have at most one PARTITION BY ANY input.
- If a function has a PARTITION BY ANY input, all other inputs must be DIMENSION inputs.
- If a function does not have a PARTITION BY ANY input, it can have any number ofp_attribute_set inputs.
- All PARTITION BY p_attribute_set clauses must specify the same number of attributes, and corresponding attributes must be equijoin-compatible (that is, either of the same data type or of data types that can be implicitly cast to match).
- At least one PARTITION BY ANY or PARTITION BYp_attribute_set input must be nonempty; otherwise, the function does not run.
DIMENSION inputs only provide information to the function, as its arguments do.
- Inputs can be in any order. For example, your function could have:
SELECT ... ON store_locations DIMENSION, ON purchases PARTITION BY purchase_date, ON products DIMENSION ORDER BY prod_name ...