一个用来统计相同姓名人数的SQl语句
一个用来统计相同姓名人数的SQl语句
发布时间:2016-12-29 来源:查字典编辑
摘要:sql语句查询表结构是这样:ID姓名性别1张三男2王四男3丽丽女4张三男5赵柳男6高洁男7王四女8高洁女9张三女怎么能用一条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

一个用来统计相同姓名人数的SQl语句1

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新mssql数据库学习
热门mssql数据库学习
编程开发子分类