含隱含欄位值定義的集合修飾詞
以下說明如何使用巢狀集合定義來定義欄位值集合。
在這種情況下,必須使用元素函數 P() and E(),分別代表欄位可能值的元素集合,以及欄位排除值的元素集合。可在括弧內指定一個集合運算式和一個欄位,例如 P({1} Customer)。這些函數無法用於其他運算式:
範例:
範例 | 結果 |
---|---|
sum( {$<Customer = P({1<Product={‘Shoe’}>} Customer)>} Sales ) |
會傳回目前選項的銷售額,但僅針對曾經買過「Shoe」產品的客戶。元素函數 P( ) 在此會傳回可能客戶的清單,亦即以欄位 Product 中選項為「Shoe」所表示的客戶。 |
sum( {$<Customer = P({1<Product={‘Shoe’}>})>} Sales ) |
同上。如果省略元素函數中的欄位,則函數會傳回外部指派中所指定之欄位的可能值。 |
sum( {$<Customer = P({1<Product={‘Shoe’}>} Supplier)>} Sales ) |
會傳回目前選項的銷售額,但僅針對曾經供應過產「Shoe」品的客戶。元素函數 P( ) 在此會傳回可能客戶的清單,亦即以欄位 Product 中選項為「Shoe」所表示的供應商。應商的清單接著會做為欄位 Customer 中的選項。 |
sum( {$<Customer = E({1<Product={‘Shoe’}>})>} Sales ) |
會傳回目前選項的銷售額,但僅針對不曾買過「Shoe」產品的客戶。元素函數 P( ) 在此會傳回已排除客戶的清單,亦即以欄位 Product 中選項為「Shoe」所排除的客戶。 |