程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> 其他數據庫知識 >> MSSQL >> 一個用來統計雷同姓名人數的SQl語句

一個用來統計雷同姓名人數的SQl語句

編輯:MSSQL

一個用來統計雷同姓名人數的SQl語句。本站提示廣大學習愛好者:(一個用來統計雷同姓名人數的SQl語句)文章只能為提供參考,不一定能成為您想要的結果。以下是一個用來統計雷同姓名人數的SQl語句正文


sql語句查詢
表構造是如許:
ID 姓名 性別
1 張三 男
2 王四 男
3 麗麗 女
4 張三 男
5 趙柳 男
6 高潔 男
7 王四 女
8 高潔 女
9 張三 女
怎樣能用一條SQL語句查詢出以下的成果

姓名 人員個數 漢子數 女人數 包括ID
張三 3 2 1 1,4,9
王四 2 1 1 2,7
麗麗 1 0 1 3
高潔 2 1 1 6,8
趙柳 1 1 0 5

SELECT * FROM (SELECT DISTINCT Name,Count(ID) as 人員個數,
sum(case when Sex='男' then 1 else 0 end) as 漢子數,
sum(case when Sex='女' then 1 else 0 end) as 女人數
FROM Test group by Name) A
OUTER APPLY(
SELECT
[包括ID]= STUFF(REPLACE(REPLACE(
(
SELECT ID FROM Test N
WHERE Name = A.Name
FOR XML AUTO
), '<N ID="', ','), '"/>', ''), 1, 1, '')
)N

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved