尊重原创:http://blog.csdn.net/love_java_cc/article/details/78268326 有如下一张表score: 建表语句: CREATE TABLE `score` (`id` int NOT NULL AUTO_INCREMENT ,`name` varchar(20) NOT NULL ,`category` varchar(20) NOT NULL ,`score` int NOT NULL ); 现在要去查询学生的各科成绩和总分,效果如下…
实际应用中经常需要统计单位时间的记录数: 一个小时: SELECT ),createdate,) AS 日期 ,DATEPART(hh,createdate) AS 小时,COUNT(*)AS 记录 --varchar(10)得到结果为日期('2016-01-01') FROM log --或者用DATE格式提取日期(VARCHAR(10)换成DATE) where createdate>=CAST(CONVERT(VARCHAR(10),createdate,120))+' 00:00:00'…
按用户注册时间统计每天注册的不同来源.不同状态的用户数量: ), RegisterTime, ) RDate ,--DATEPART(YEAR, RegisterTime) 年 ) END 'AWaitForAudit' , ) END 'AAudited' , ) END 'BAudited' INTO #Temp FROM dbo.Customer WHERE RegisterTime BETWEEN '2015-11-23 00:00:00' AND '2015-11-25 23:59:5…
select sClass 班级,count(*) 班级学生总人数, sum(case when sGender=0 then 1 else 0 end) 女生人数, sum(case when sGender=0 then 1 else 0 end)*1.0/count(*)女生所占比例, sum(case when sGender=1 then 1 else 0 end) 男生人数, sum(case when sGender=1 then 1 else 0 end)*1.0 /coun…
select NVL(sum(case when create_date_time>=to_date('2014-11-24 00:00:00','yyyy-mm-dd hh24:mi:ss') and create_date_time<=to_date('2014-11-24 23:59:59','yyyy-mm-dd hh24:mi:ss') then amount end),0) today ,NVL(sum(case when create_date_time>=to_date(…