關(guān)于 Partition 函數(shù)在分組查詢中的應(yīng)用
關(guān)于 Partition 函數(shù)在分組查詢中的應(yīng)用《函數(shù)》
看到很多朋友在access進行分組統(tǒng)計查詢時,常常用嵌套多層IIF函數(shù)來得到分組區(qū)間標(biāo)志,如設(shè)表A有Age這樣一個字段,一般朋友會采用如下的查詢語句:
Select IIf(Age<30,"0:29",IIf(Age<40,"30:39",IIf(Age<50,"40:49",IIf(Age<60,"50:59",IIf(Age<70,"60:69","70: "))))) As Range, Count (1) As Count From 表A Group By IIf(Age<30,"0:29",IIf(Age<40,"30:39",IIf(Age<50,"40:49",IIf(Age<60,"50:59",IIf(Age<70,"60:69","70: "))))) |
不但語句冗長,而且由于多層IIF函數(shù)嵌套,極易出錯。另外如果分組區(qū)間進一步細(xì)化,更加多層嵌套的IIF函數(shù)會讓人有“亂花漸欲迷人眼”的感覺,出錯的概率進一步增大。
現(xiàn)在我們用 Partition 函數(shù)重寫一下:
Select Partition(Age,0,69,10) As Range, Count(Age) As Count From表A Group By Partition(Age,0,69,10) |
代碼相對簡單很多,不過上述函數(shù)只適用于純 access 環(huán)境
以下是 Partition 的幫助
Partition 函數(shù)
返回一個 Variant (String),指定一個范圍,在一系列計算的范圍中指定的數(shù)字出現(xiàn)在這個范圍內(nèi)。 語法 Partition(number, start, stop, interval) Partition 函數(shù)的語法含有下面這些命名參數(shù):
說明 Partition 函數(shù)會標(biāo)識 number 值出現(xiàn)的特定范圍,并返回一個 Variant (String) 來描述這個范圍。Partition 函數(shù)在查詢中是最有用的?梢詣(chuàng)建一個選擇查詢顯示有多少定單落在幾個變化的范圍內(nèi),例如,定單數(shù)從 1 到 1000、1001 到 2000,以此類推。 下面的表格使用三組 start,stop 以及 interval 部分,來顯示怎樣決定這個范圍。第一個范圍和最后一個范圍兩列顯示 Partition 的返回值,此范圍的低端 (lowervalue) 和高端 (uppervalue) 是以冒號分開的。
從上面的表格中得知,在第三行中,由 start 和 stop 所定義的數(shù)值范圍不能以 interval 來均分。所以,即使 interval 是 20,最后一個范圍也只能擴展到stop(11 個數(shù))。 如果需要的話,Partition 會在返回的范圍中加上足夠的空白,以便讓返回值在冒號的左右兩側(cè)有相同的字符數(shù),其值就是 stop 中的字符數(shù)再加一。如此可確保當(dāng)要使用 Partition 與其它的數(shù)值作運算時,所得的字符串,可以在之后的排序操作中得到正確的結(jié)果。 如果 interval 是 1,則范圍便是 number:number,而不管 start 和 stop 參數(shù)如何。比如說,如果 interval 是 1,number 是 100,而 stop 是 1000,則 Partition 會返回 " 100: 100"。 如果任何部分是 Null,則 Partition 會返回一個 Null。 |
(責(zé)任編輯:admin)
- ·關(guān)于 Partition 函數(shù)在分組查詢中的應(yīng)
- ·Access算術(shù)運算符的含義和說明表
- ·mid函數(shù)的另類用法
- ·access制作程序運行進度框
- ·Function與Sub的異同(函數(shù)調(diào)用)
- ·Access判斷某個數(shù)值是否為某個數(shù)據(jù)類型
- ·select case后面語句塊的值的四種格式
- ·vba條件語句的兩種表示方法
- ·Access幾種數(shù)據(jù)類型初始化的值
- ·Access vba null與""空字符串的區(qū)別
- ·access vba 數(shù)據(jù)類型表
- ·Access變量的命名規(guī)則
- ·Access中EXIT Sub與End Sub的區(qū)別
- ·Access vba中參數(shù)前關(guān)鍵字ByRef和ByVal
- ·Access列表框快速全選的技巧【最快】
- ·vba函數(shù)的數(shù)據(jù)類型強制轉(zhuǎn)換