傳回 Variant (String) 指出數位在導出數列範圍內的發生位置。
語法
磁碟分區 ( 數字、開始、停止、間隔)
Partition 函數語法具有下列自變數:
引數 |
描述 |
number |
必要。 這是要根據範圍評估的整數。 |
開始 |
必要。 這是整體數位範圍開頭的整數。 這個數位不能小於 0。 |
停止 |
必要。 這是數位整體範圍結尾的整數。 數位不能等於或小於 [開始]。 |
interval |
必要。 指定在開始和最前面) 之間 (之整體數位範圍內之磁碟分區大小的整數。 |
註解
Partition 函數會識別數位在哪個特定範圍中落差,並傳回 Variant (String) 描述該範圍。 磁碟分區函數在查詢中最為有用。 您可以建立選取查詢,顯示落在不同範圍內的訂單數量,例如,1 到 1000、1001 到 2000 的訂單值等。
下表顯示如何使用三組 開始、 停止和 間隔 自變數來判斷範圍。 [第一個範圍] 和 [最後一個範圍] 欄會顯示 磁碟分區傳 回的內容。 範圍是由 lowervalue:uppervalue表示,其中範圍的低端 () 值會與範圍中含有冒號 (的 (最高值) 分隔 :) 。
開始 |
停止 |
interval |
第一個之前 |
第一個範圍 |
最後一個範圍 |
最後一個之後 |
0 |
99 |
5 |
" :-1" |
" 0: 4" |
" 95: 99" |
" 100: " |
20 |
199 |
10 |
" : 19" |
" 20: 29" |
" 190: 199" |
" 200: " |
100 |
1010 |
20 |
" : 99" |
" 100: 119" |
" 1000: 1010" |
" 1011: " |
在上述數據表中,第三行會在 開始 和 停止 時顯示結果,定義一組無法以 間隔平均分割的數位。 最後一個範圍會延伸為 停止 (11 個數位) 即使 區間 是 20。
如有需要, 磁碟分區 會傳回具有足夠前置空格的範圍,讓冒號左方和右邊的字元數與 stop 中的字元數相同,再加上一個字元。 這可確保如果您將 磁碟分區 與其他數位搭配使用,後續排序作業期間會正確處理產生的文字。
如果 interval 是 1,範圍會是 number:number,無論 開始 與 停止 自變數為何。 例如,如果 interval 為 1, 數位 為 100 且 stop 為 1000, 磁碟分區會 傳回 “100:100”。
如果任一部分為 Null, 磁碟分區會 傳回 Null。
查詢範例
Expression |
結果 |
SELECT Partition (unitprice,40,240,20) AS PriceRange,count (productsales.unitprice) AS Count FROM productSales GROUP BY Partition (unitprice,40,240,20) ; |
針對欄位 「unitprice」 中的值從 「start」 (40) 建立一組範圍,以 「stop」 (240) 等於“ interval” (20) 大小,並計算個別範圍中的 “unitprice” 計數。 在 [PriceRange] 欄中顯示範圍,並在「計數」欄中顯示計數。 |
VBA 範例
此範例假設您有一個包含 Freight 字段的 [訂單] 資料表。 它會建立選取程式,計算運費分成數個範圍的訂單數目。 磁碟分區函數會先用來建立這些範圍,然後 SQL Count 函數會計算每個範圍中的訂單數目。 在此範例中, Partition 函數的自變數是 start = 0, stop = 500, interval = 50。 因此,第一個範圍會是0:49,依此類數最多500。
SELECT DISTINCTROW Partition([freight],0, 500, 50) AS Range,
Count(Orders.Freight) AS Count FROM Orders GROUP BY Partition([freight],0,500,50);