❶ sql server 如何同時對列和行同時分組
SELECT Provice, Companyid, COUNT(*) FROM employee GROUP BY Provice, Companyid
得出結果是:
江蘇 01 2
江蘇 02 1
上海 02 2
這就是你要的結果了。
另外你無法做到用欄位的內容(例如「江蘇」「01」等等)作為列標題來顯示查詢結果。
❷ 資料庫中如何分類、分組並總計SQL數據
通常,我們確實需要對所有數據進行排序。SQL的ORDER BY子句將數據按字母或數字順序進行排列。因此,同類數據明顯分類到各個組中。然而,這些組只是分類的結果,它們並不是真正的組。ORDER BY顯示每一個記錄,而一個組可能代表多個記錄。 2、減少組中的相似數據 分類與分組的最大不同在於:分類數據顯示(任何限定標准內的)所有記錄,而分組數據不顯示這些記錄。GROUP BY子句減少一個記錄中的相似數據。例如,GROUP BY能夠從重復那些值的源文件中返回一個唯一的郵政編碼列表: SELECTZIP FROMCustomers GROUPBYZIP 僅包括那些在GROUP BY和SELECT列列表中字義組的列。換句話說,SELECT列表必須與GROUP列表相匹配。只有一種情況例外:SELECT列表能夠包含聚合函數。(而GROUP BY不支持聚合函數。) 記住,GROUP BY不會對作為結果產生的組分類。要對組按字母或數字順序排序,增加一個ORDER BY子句(#1)。另外,在GROUP BY子句中您不能引用一個有別名的域。組列必須在根本數據中,但它們不必出現在結果中。 3、分組前限定數據 您可以增加一個WHERE子句限定由GROUP BY分組的數據。例如,下面的語句僅返回肯塔基地區顧客的郵政編碼列表。 SELECTZIP FROMCustomers WHEREState='KY' GROUPBYZIP 在GROUP BY子句求數據的值之前,WHERE對數據進行過濾,記住這一點很重要。
❸ SQL 同一欄位不同內容進行分組顯示的
SELECT
姓名
住院號
SUM(case
when
費別=『西葯費』
then
金額
else
0
end
)
as
西葯費
SUM(case
when
費別=『CT費』
then
金額
else
0
end
)
as
CT費
SUM(case
when
費別=『電診費』
then
金額
else
0
end
)
as
電診費
SUM(case
when
費別=『X光費』
then
金額
else
0
end
)
as
X光費
SUM(case
when
費別=『
葯費』
then
金額
else
0
end
)
as
重要費
from
table
group
by
姓名
住院號
❹ sql語句實現分組統計
方法和詳細的操作步驟如下:
1、第一步,創建一個測試表,詳細代碼見下圖,轉到下面的步驟。
❺ SQL 同一欄位不同內容進行分組顯示的
SELECT 姓名,住院號,SUM(case when 費別=『西葯費』,then 金額 else 0 end ) as 西葯費,
SUM(case when 費別=『CT費』,then 金額 else 0 end ) as CT費,
SUM(case when 費別=『電診費』,then 金額 else 0 end ) as 電診費,
SUM(case when 費別=『X光費』,then 金額 else 0 end ) as X光費,
SUM(case when 費別=『中葯費』,then 金額 else 0 end ) as 重要費
from table
group by 姓名,住院號
❻ sql語句 如何分組後得到記錄總數
SELECT COUNT(*)
FROM (SELECT 分組欄位 FROM 表
GROUP BY 分組欄位
)別名
或者
SELECT COUNT(*)
FROM (SELECT distinct 分組欄位 FROM 表)別名
(6)sql同頻分組擴展閱讀:
SQL分組查詢
在SQL Server中使用的分組查詢是ORDER BY子句,使用ORDER BY子句要同聚合函數配合使用才能完成分組查詢,在SELECT查詢的欄位中如果欄位沒有使用聚合函數就必須出現在ORDER BY子句中(即SELECT後邊的欄位名要麼出現在聚合函數中,要麼在ORDER BY子句中使用)
在分組查詢中還可以配合使用HAVING子句,定義查詢條件。
使用group by進行分組查詢
在使用group by關鍵字時,在select列表中可以指定的項目是有限制的,select語句中僅許以下幾項:
1、被分組的列
2、為每個分組返回一個值得表達式,例如用一個列名作為參數的聚合函數
3、group by 有一個原則,就是 select 後面的所有列中,沒有使用聚合函數的列,必須出現在 group by 後面