㈠ 按照时间段统计的sql语句
我只能大概说一个想法,
创建一个中间表,存放8点-14点 14点-20点 20点-2点 2点-8点 这样的一个标题及具体的时间段,
然后用这个中间表与biao1根据时间tm进行关联,就可以把数据与时间段联系上。
然后按这个时间段进行了group by ,之后再用 pivot就可以出来了。
㈡ sql按日期统计
思路:先建一个中间表 sys_date(s_date var(8))
接着,把每天数据插入。
最后进行关联查询。
查询实例:
SELECT nvl(CONVERT(VARCHAR(20), TIME, 112),0), COUNT(IP)
FROM WEB_USER join sys_date on CONVERT(VARCHAR(20), TIME, 112)=sys_date.s_date
where sys_date.s_date >='20100101'
and sys_date.s_date <='20100131'
GROUP BY CONVERT(VARCHAR(20), TIME, 112)
ORDER BY CONVERT(VARCHAR(20), TIME, 112)
㈢ sql按指定时间段统计问题
不用去判断,系统自己会判断的,如上图,测试代码如下:
declare @dateNow varchar(100)
declare @daybefore varchar(100)
set @dateNOw = '2014/03/01 09:00:00'
set @daybefore = DATEADD(DAY,-1,@dateNOw)
select @daybefore as daybefore, @dateNow
select * from v_WorkRecord where MakeDate between @daybefore and @dateNow
㈣ 统计时间的sql语句 帮忙了各位,具体要求如下
你这个要用到数据库函数,所以得说一下你使用数据库是什么。另外你统计出什么,请假时间是按照小时计算?还是分钟?
你数据库是什么,access还是sql server oracle,mysql??
㈤ 求教一个sql时间范围内的统计语句
查询慢,一般都是数据量有点多,我认为你可以给这几张表加个索引,然后对他们进行关联查询,这样子就会快了。
㈥ SQLServer的分时间段统计的SQL语句。
没看懂a和b二个表的用途,假设对表a统计。
直接统计比较困难,不过你可以先把日期转换成到最早日期的分钟数,把分钟数除以10求整,得到的新值就是每10分钟一组的了。不过新值需要保存到临时表,再对临时表分组统计。
--按上述分析将a表中的f_time转换为以最早日期为起点的每10分钟一个值的新列,如间隔8分钟,新列值为0,18分钟,新值为1.此列命名为ten,把它们复制到临时表#tj中。
select floor(datediff(mi,(select min(f_time) from a),optime)/10) ten,f_time,f_val from a into #tj where not a is null order by f_time
--对#tj按ten列分组统计,同时显示每组的起始日期好截止日期。
select ten,min(f_time) bg,max(f_time) end,sum(f_val) hj_val from #tj group by ten order by ten
--把临时表删掉
drop table #tj
㈦ mysql按时间分段统计的sql语句怎么写好
时间段统计,可以采用 hour(subscribe_time) 取出小时然后分层
㈧ 求一SQL语句,按照时间和用户统计
selectto_char(time,'yyyy-mm-dd'),userid,count(1)as工作量from表名称groupbyto_char(time,'yyyy-mm-dd'),userid
orderbyto_char(time,'yyyy-mm-dd')desc,userid
㈨ sql 按时间统计
当然可以;
用行转列就行了
--静态写法
select 单位,
sum(case when year(时间)=2005 and datepart(q,时间)=1 then 值 else 0 end) as 2005一季,
sum(case when year(时间)=2005 and datepart(q,时间)=2 then 值 else 0 end) as 2005一季,
..........
from table
group by 单位
竖向显示时;
select 单位,
case when year(时间)=2005 and datepart(q,时间)=1 then '2005年第一季'
when when year(时间)=2005 and datepart(q,时间)=2
then '2005年第二季'
..........end as 显示季,
sum(值) as 显示值
from table
group by 单位,case when year(时间)=2005 and datepart(q,时间)=1 then '2005年第一季'
when when year(时间)=2005 and datepart(q,时间)=2
then '2005年第二季'
..........end
㈩ sql查询一天每个小时的数据量的统计语句怎么写
with data as
( select 时间, convert(int, 第二列) as 小时, 数量 from 表格)
select 时间, 小时, sum(数量)
from data
group by 时间, 小时