日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
SQLServergroupby語句的幾種用法描述

以下的文章主要描述的是SQL Server group by的正確用法,在實際操作中g(shù)roup by是經(jīng)常要用到的語法,那么你對SQL Server group by的用法有興趣了解的話,你就可以通過以下的文章對其有個更好的了解。

站在用戶的角度思考問題,與客戶深入溝通,找到湘西土家族網(wǎng)站設(shè)計與湘西土家族網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:網(wǎng)站制作、成都做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣、國際域名空間、雅安服務(wù)器托管、企業(yè)郵箱。業(yè)務(wù)覆蓋湘西土家族地區(qū)。

group by 是SQL Server 中常用的一種語法,語法如下:

 
 
 
  1. [ GROUP BY [ ALL ] group_by_expression [ ,...n ]  
  2. [ WITH { CUBE | ROLLUP } ]  

SQL Server group by的用法1、最常用的就是這種語法,如下:

 
 
 
  1. Select CategoryID, AVG(UnitPrice), COUNT(UnitPrice)   
  2. FROM dbo.Products Where UnitPrice > 30  
  3. GROUP BY CategoryID   
  4. ORDER BY CategoryID DESC 

這個語句查詢出,所有產(chǎn)品分類的產(chǎn)品平均單價,單價計數(shù)。并且單價在 30 以上的記錄。

SQL Server group by的用法2、再看看這種語法,如下:

 
 
 
  1. Select CategoryID, AVG(DISTINCT UnitPrice), COUNT(DISTINCT UnitPrice)   
  2. FROM dbo.Products   
  3. Where UnitPrice > 30  
  4. GROUP BY CategoryID   
  5. ORDER BY CategoryID DESC 

使用 DISTINCT 的時候,將會去除重復(fù)的價格平均單價。

SQL Server group by的用法3、如果希望在分類統(tǒng)計之后,再使用條件過濾,下面的語句可以做為參數(shù):

 
 
 
  1. Select CategoryID, SUM(UnitPrice) AS SumPrice  
  2. FROM dbo.Products  
  3. GROUP BY CategoryID  
  4. HAVING SUM(UnitPrice) > 300 

HAVING 與 Where 語句類似,Where 是在分類之前過濾,而 HAVING 是在分類之后過濾。它和 Where 一樣使用 AND、OR、NOT、LIKE 組合使用。

SQL Server group by的用法4、如果希望再在分類統(tǒng)計中,添加匯總行,可以使用以下語句:

 

 
 
 
  1. Select CategoryID, SUM(UnitPrice), GROUPING(CategoryID) AS 'Grouping'  
  2. FROM dbo.Products  
  3. GROUP BY CategoryID WITH ROLLUPGrouping 

這一列用于標識出哪一行是匯總行。它使用 ROLLUP 操作添加匯總行。

SQL Server group by的用法5、如果使用 WITH CUBE 將會產(chǎn)生一個多維分類數(shù)據(jù)集,如下:

 
 
 
  1. Select CategoryID, SupplierID, SUM(UnitPrice) AS SumPrice  
  2. FROM dbo.Products  
  3. GROUP BY CategoryID, SupplierID WITH CUBE 

它會產(chǎn)生一個交叉表,產(chǎn)生所有可能的組合匯總。

SQL Server group by的用法6、使用 ROLLUP CUBE 會產(chǎn)生一個 NULL 空值,可以使用以下語法解決,如下:

 
 
 
  1. Select CASE WHEN (GROUPING(SupplierID) = 1) THEN '-1' ELSE SupplierID END AS SupplierID, SUM(UnitPrice) AS QtySum  
  2. FROM dbo.ProductsGROUP BY SupplierID WITH CUBE 

 

它首先檢查當(dāng)前行是否為匯總行,如果是就可以設(shè)置一個值,這里設(shè)置為 '-1' 。

 

【編輯推薦】

  1. SQL Server復(fù)制和其相關(guān)的工作原理
  2. MS SQL Server 未公開的加密函數(shù)有哪些?
  3. 用SQL Server 2005DDL觸發(fā)器對數(shù)據(jù)庫進行監(jiān)控
  4. SQL Server刪除重復(fù)數(shù)據(jù)的2個實用方案
  5. SQL Server數(shù)據(jù)庫相關(guān)數(shù)據(jù)大匯和

本文題目:SQLServergroupby語句的幾種用法描述
鏈接URL:http://www.5511xx.com/article/coghhgd.html