易截截图软件、单文件、免安装、纯绿色、仅160KB

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 
 


相关文档:

航空公司管理系统(VC++ 与SQL 2005)

系统环境:Windows 7
软件环境:Visual C++ 2008 SP1 +SQL Server 2005
本次目的:编写一个航空管理系统
      这是数据库课程设计的成果,虽然成绩不佳,但是作为我用VC++ 以来编写的最大程序还是传到网上,以供参考。用VC++ 做数据库设计并不容易,但也不是不可能。以下是我的程序界面,后面 ......

SQL 构造时间表方法123

(1)SQL方法(1)
select convert(varchar(5),dateadd(hour,number,cast('00:00' as datetime)),108)+'~'+
convert(varchar(5),dateadd(hour,number+1,cast('00:00' as datetime)),108) as [date]
from master..spt_values
where type = 'P' and
number <= 23
(2)SQL方法(2)
得出一天的时间段记录。(如&nb ......

sql分组函数使用


转自:http://book.csdn.net/bookfiles/235/10023510864.shtml
在实际SQL应用中,经常需要进行分组聚合,即将查询对象按一定条件分组,然后对每一个组进行聚合分析。
GROUP BY子句创建分组
创建分组是通过GROUP BY子句实现的。与WHERE子句不同,GROUP BY子句用于归纳信息类型,以汇总相关数据。而为什么要使用GROUP BY ......

常用的SQL语句

新建表:
create table [表名]
(
[自动编号字段] int IDENTITY (1,1) PRIMARY KEY ,
[字段1] nVarChar(50) default '默认值' null ,
[字段2] ntext null ,
[字段3] datetime,
[字段4] money null ,
[字段5] int default 0,
[字段6] Decimal (12,4) default 0,
[字段7] image null ,
)
删除表:
Drop table [表 ......

SQL 数据库生成自动编号代码

--exec  [P_AutoGenerateNumber]  'reception_apply','generate_code','',7
/*
 过程说明:生成自动编号 
 创建时间:2010年1月12日
 作者:feng
 debug:尚未考虑编号溢出情况
*/ 
ALTER proc [P_AutoGenerateNumber]
  (
  @table ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号