Excel 2010 SQL應用059 格式化百分數
目錄
源資料表
品牌 | 2009年第四季度 | 2010年第四季度 |
HP | 17581525 | 17786986 |
Acer | 11852617 | 12075091 |
Dell | 10801225 | 10395288 |
Lenovo | 9481565 | 7809357 |
Toshiba | 5346700 | 4768306 |
Others | 38416677 | 37816171 |
在實際工作中,經常需要比較兩個或多個相關聯的資料,為使資料更直觀,一般用百分數表示變化率。如圖所示為2010年第四季度與2009年同期全率市場PC出貨量情況的比較表。格式化出
貨量增長率呢?
解決方案一
SELECT 品牌,[2009年第四季度],[2010年第四季度], FORMATPERCENT([2010年第四季度] / [2009年第四季度]-1) AS 增長率 FROM [sheet1$]
FORMATPERCENT函式的使用
FORMATPERCENT函式返回格式化為尾隨%字元的百分比表示式,其語法如下:
FORMATPERCENT(expression[,numdigitsafterdecimal][,includeleadingdigit][,useparensfornegativenumbers][,groupdigits])
其中,第一個引數expression表示要格式化的表示式。第二個引數numdigitsafterdecimal設定顯示小數點右邊多少位,預設值為-1,指示使用計算機的區域設定。第三個引數includeleadingdigit設定小數值是否顯示前導零。第四個引數useparensfomegaLivenumbers設定是否將負值放在括號中。第五個引數groupdigits設定是否使用在計算機區域設定中指定的組分
引數includeleadingdigit. useparensfornegativenumbers及groupdigits的設定說明見。
當省略一個或多個可選引數時,被省略的引數的值將由計算機的區域設定提供。所有的設定資訊均來自“區域設定”的“數字”選項卡。
Includeleadingdigit,useparensfornegativenumbers及groupdigits設定說明
值 | 說明 |
-1 | True |
0 | False |
-2 | 使用計算機區域設定中的設定 |
解決方案二
SELECT 品牌,[2009年第四季度],[2010年第四季度], FORMATNUMBER([2010年第四季度] / [2009年第四季度]-1,4)*100 & '%' AS 增長率 FROM [sheet1$]
FORMATNUMBER函式的使用
本例中,通過FORMATNUMBER函式返回符合要求格式的增長率。分步解析如下: [2010年第四季度] / [2009年第四季度]-1,返回增長率數值。
FORMATNUMBER([2010年第四季度] / [2009年第四季度]-1,4,格式化增長率數值為4位小數。
FORMATNUMBER([2010年第四季度] / [2009年第四季度]-1,4)*100 & '%',將數值擴大100倍後增加符號"%”。
FORMATNUMBER函式返回格式化為數字表達式,其語法如下:
FORMATNUMBER(expression[,numdigitsafterdecimal][,includeleadingdigit][,useparensfornegativenumbers][,groupdigits])
其中,第一個引數expression表示要格式化的表示式。第二個引數numdigitsafterdecimal設定顯示小數點右邊多少位,預設值為-1,指示使用計算機的區域設定。第三個引數includeleadingdigit設定小數值是否顯示前導零。第四個引數useparensfornegativenumbers設定是否將負值放在括號中。第五個引數groupdigits設定是否使用在計算機區域設定中指定的組分
隔符將數字分組,
引數useparensfomegativenumbers及groupdigits的設定同上述。
解決方案三
SELECT 品牌,[2009年第四季度],[2010年第四季度],
ROUND(([2010年第四季度] / [2009年第四季度]-1)*100,2) & '%' AS 增長率
FROM [sheet1$A1:C7]
解決方案四
SELECT 品牌,[2009年第四季度],[2010年第四季度],
FORMAT([2010年第四季度] / [2009年第四季度]-1,'0.00%') AS 增長率
FROM [sheet1$A1:C7]