Partition,讓你的分組統(tǒng)計(jì)更加得心應(yīng)手
看到很多朋友在access進(jìn)行分組統(tǒng)計(jì)查詢時(shí),常常用嵌套多層IIF函數(shù)來得到分組區(qū)間標(biāo)志,如設(shè)表A有Age這樣一個(gè)字段,一般朋友會(huì)采用如下的查詢語句:
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: ")))))
不但語句冗長(zhǎng),而且由于多層IIF函數(shù)嵌套,極易出錯(cuò)。另外如果分組區(qū)間進(jìn)一步細(xì)化,更加多層嵌套的IIF函數(shù)會(huì)讓人有“亂花漸欲迷人眼”的感覺,出錯(cuò)的概率進(jìn)一步增大。
下面我為大家介紹VBA自帶的一個(gè)函數(shù)Partition,它能使你的語句變得精簡(jiǎn),大大減少出錯(cuò)概率。
首先說明一下其的語法:
Partition(number, start, stop, interval)
number 必需。整數(shù),在所有范圍中判斷這個(gè)整數(shù)是否出現(xiàn)。
start必需。整數(shù),數(shù)值范圍的開始值,該值不能小于0。
stop必需。整數(shù),數(shù)值范圍的結(jié)束值,該值不能等于或小于start。
interval必需。整數(shù),指示在Start與Stop之間計(jì)算的每個(gè)范圍的大小。該值不能小于1。
我們把上面的查詢語句修改一下,采用Partition函數(shù):
Select Partition(Age,0,69,10) As Range, Count(Age) As Count From表A Group By Partition(Age,0,69,10)
效果是很顯示的,與上面冗長(zhǎng)的語句相比,簡(jiǎn)單是天差地別。
現(xiàn)在我結(jié)合這個(gè)實(shí)例再對(duì)Partition函數(shù)做進(jìn)一步說明:
Partition(Age,0,69,10)
number 參數(shù)為Age字段,也就是對(duì)該字段的所有內(nèi)容進(jìn)行判斷。
start 參數(shù)為0,即統(tǒng)計(jì)范圍從0開始
stop 參數(shù)為69,即統(tǒng)計(jì)范圍以69結(jié)束,這里需要解釋一下。
雖然統(tǒng)計(jì)范圍截止到69,但是如果表A中Age字段存在比69大的數(shù)值,即70及以上的,結(jié)果中將會(huì)為70及以上的數(shù)值劃分出一個(gè)區(qū)間。(同理,如果start參數(shù)的值大于0,假設(shè)是10,那么當(dāng)Age字段中存在比10小的數(shù)值,結(jié)果中也為會(huì)10以下(不含10)的數(shù)值劃分出一個(gè)區(qū)間)
interval 參數(shù)為10,即每個(gè)區(qū)間范圍是10,即0:9,10:19,20:29………(說明:如果某區(qū)間范圍內(nèi)沒有符合數(shù)值,結(jié)果中將省略這個(gè)區(qū)間)
(責(zé)任編輯:admin)
- ·sql語句中l(wèi)ike通配符的匯總(*?!#-等含
- ·Access常用sql基本查詢語句匯總
- ·SQL查詢語句的一般格式小結(jié)
- ·聯(lián)合查詢應(yīng)用舉例1
- ·如何取消操作查詢的提示
- ·報(bào)表中先按組再按條件統(tǒng)計(jì)
- ·測(cè)試查詢速度
- ·條件選擇列求和
- ·SQL必知必會(huì)(14)NOT操作符
- ·ACCESS的參數(shù)化查詢-Access數(shù)據(jù)庫教程
- ·ACCESS的真假:四、"SELECT * INTO 工
- ·在Access中利用搜索窗體中的值生成動(dòng)態(tài)
- ·Access使用查詢
- ·隨機(jī)得到Access數(shù)據(jù)庫記錄
- ·SQL 高級(jí)使用
- ·交叉表查詢中的累計(jì)
- ·Sql Server 和 Access 操作數(shù)據(jù)庫結(jié)構(gòu)的常
- ·ACCESS中使用SQL語句應(yīng)注意的地方及幾點(diǎn)技
- ·一個(gè)計(jì)算庫存及結(jié)轉(zhuǎn)的例子
- ·如何實(shí)現(xiàn)動(dòng)態(tài)查詢余額
- ·如何用sql語句添加刪除主鍵?
- ·SQL中語法錯(cuò)誤(操作符丟失)問題
- ·用Between 和 iif 實(shí)現(xiàn)靈活的查詢
- ·如何提取分組取前N條的記錄
- ·DELPHI中操作ACCESS數(shù)據(jù)庫
- ·Partition,讓你的分組統(tǒng)計(jì)更加得心應(yīng)手