2013-10-28 22 views
-1

我有一個列表st_nameid。我需要得到st_namest_name組的計數。我該怎麼做呢?如何在sql server 2008的同一個表中使用count和Group By?

+0

請添加示例數據和期望的結果。 –

+0

Station_name | ID val1 1 val2 2上面是表格格式,我必須得到Station_name Group By ID的計數。我的查詢試圖這樣做是:select station_name,count(*)as grp_cnt, (從tbl_Training_Detail中選擇count(distinct station_name))作爲st_cnt 來自tbl_Training_Detail組by MasterId – Suren

+0

@Suren:這很難閱讀。請編輯您的答案以添加您的'CREATE TABLE'腳本並且您迄今爲止的最佳嘗試。請注意,如果您縮進代碼,它將被格式化(例如,使用固定寬度的字體)。 – 2013-10-28 18:35:20

回答

0
select st_name, 
     count(*) as grp_cnt, 
     (select count(distinct st_name) from your_table) as st_cnt 
from your_table 
group by st_name 
+1

'count(*)OVER()AS st_cnt'也會做同樣的事情。 –

+0

歡呼Juergen,但我需要分組與ID不是st_name.while與ID按組運行我得到此錯誤:列'tbl_Training_Detail.Station_Name'在選擇列表中無效,因爲它不包含在聚合函數或GROUP BY子句。 – Suren

+0

@SurendarCBE:那麼請更新您的問題以明確您要做的事情,並請添加示例數據。 –