最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

探討SQL compute by的使用分析

 更新時(shí)間:2013年06月11日 10:30:14   作者:  
本篇文章是對(duì)SQL compute by的使用進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下

GROUP BY子句有個(gè)缺點(diǎn),就是返回的結(jié)果集中只有合計(jì)數(shù)據(jù),而沒有原始的詳細(xì)記錄。如果想在SQL SERVER中完成這項(xiàng)工作,可以使用COMPUTE BY子句。COMPTE生成合計(jì)作為附加的匯總列出現(xiàn)在結(jié)果集的最后。當(dāng)與BY一起使用時(shí),COMPUTE 子句在結(jié)果集內(nèi)生成控制中斷和分類匯總。

下列 SELECT 語(yǔ)句使用簡(jiǎn)單 COMPUTE 子句生成 titles 表中 price 及 advance 的求和總計(jì):

復(fù)制代碼 代碼如下:

USE pubs
SELECT type, price, advance
FROM titles
ORDER BY type
COMPUTE SUM(price), SUM(advance)

下列查詢?cè)?COMPUTE 子句中加入可選的 BY 關(guān)鍵字,以生成每個(gè)組的小計(jì):

USE pubs

復(fù)制代碼 代碼如下:

SELECT type, price, advance
FROM titles
ORDER BY type
COMPUTE SUM(price), SUM(advance) BY type

此 SELECT 語(yǔ)句的結(jié)果用12 個(gè)結(jié)果集返回,六個(gè)組中的每個(gè)組都有兩個(gè)結(jié)果集。每個(gè)組的第一個(gè)結(jié)果集是一個(gè)行集,其中包含選擇列表中所請(qǐng)求的信息。每個(gè)組的第二個(gè)結(jié)果集包含 COMPUTE 子句中兩個(gè) SUM 函數(shù)的小計(jì)。

compute by 子句的規(guī)則:

(1)不能將distinct與行統(tǒng)計(jì)函數(shù)一起使用

(2)compute ??? by 子句中 ???出的列必須出現(xiàn)在選擇列表中

(3)不能在含有compute by 子句的語(yǔ)句中使用select into 子句,因?yàn)榘╟ompute 子句的語(yǔ)句會(huì)產(chǎn)生不規(guī)則的行。

(4)如果使用了compute by子句,則必須使用order by 子句, 而且compute by子句中的列必須包含在order by 子句中,并且對(duì)列的前后順序和起始項(xiàng)都要一致(說白了compute by子句中的列必須是order by子句中列表的全部,或者前邊的連續(xù)幾個(gè))。

(5)如果compute 省略了 by ,則order by 也可以省略

(6)如果compute by 子句包含多列時(shí),會(huì)將一個(gè)組(第一個(gè)列分的組)分成若干個(gè)子組(利用后面的列),并對(duì)每層子組進(jìn)行統(tǒng)計(jì)。

(7)使用多個(gè)compute by子句時(shí),會(huì)分別按不同的組統(tǒng)計(jì)出結(jié)果。詳細(xì)信息還是按照正常的第一個(gè)分組方式顯示。

(8)compute by 子句中可以使用多個(gè)統(tǒng)計(jì)函數(shù),他們互不影響

(9)compute by 子句中可以不包含by ,而只用compute  此時(shí)不對(duì)前面信息分組,而只對(duì)全部信息進(jìn)行統(tǒng)計(jì)。

比較 COMPUTE 和 GROUP BY
COMPUTE 和 GROUP BY 之間的區(qū)別匯總?cè)缦拢?
GROUP BY 生成單個(gè)結(jié)果集。每個(gè)組都有一個(gè)只包含分組依據(jù)列和顯示該組子聚合的聚合函數(shù)的行。選擇列表只能包含分組依據(jù)列和聚合函數(shù)。

COMPUTE 生成多個(gè)結(jié)果集。一類結(jié)果集包含每個(gè)組的明細(xì)行,其中包含選擇列表中的表達(dá)式。另一類結(jié)果集包含組的子聚合,或 SELECT 語(yǔ)句
的總聚合。選擇列表可包含除分組依據(jù)列或聚合函數(shù)之外的其它表達(dá)式。聚合函數(shù)在 COMPUTE 子句中指定,而不是在選擇列表中。
下列查詢使用 GROUP BY 和聚合函數(shù);該查詢將返回一個(gè)結(jié)果集,其中每個(gè)組有一行,該行中包含該組的聚合小計(jì):
USE pubs
SELECT type, SUM(price), SUM(advance)
FROM titles
GROUP BY type

說明 在 COMPUTE 或 COMPUTE BY 子句中,不能包含 ntext、text 或 image 數(shù)據(jù)類型。

相關(guān)文章

最新評(píng)論

大城县| 城市| 鞍山市| 八宿县| 宿松县| 北海市| 正宁县| 临安市| 分宜县| 汉寿县| 商水县| 郴州市| 承德县| 准格尔旗| 资溪县| 湖南省| 晴隆县| 江川县| 宣威市| 德清县| 涞水县| 无极县| 威信县| 衢州市| 梓潼县| 古田县| 突泉县| 芜湖县| 丽江市| 藁城市| 龙川县| 磐安县| 株洲市| 澄江县| 阿图什市| 云安县| 师宗县| 云林县| 蓝田县| 太仓市| 江口县|