在数据库中如何实现统计?(100分)

  • 主题发起人 主题发起人 若影
  • 开始时间 开始时间

若影

Unregistered / Unconfirmed
GUEST, unregistred user!
请各位高手帮忙!在此先谢了。
我的问题:
表中有两个字段,开始时间和结束时间,
比如,有一条记录开始时间是2002-6-23 01:30:01,结束时间是2002-6-23 04:30:01
而我现在需要分别统计从
0:00-2:00,
2:00-4:00,
4:00-6:00,
……
隔两小时统计一次,也就是说,上面那条记录统计出来应该是0:00-6:00之间每隔两小时
应该有一个1;
如何用一条SQL实现?
 
首先建立一个视图,增加一个计算字段,这个计算字段的值是 0:00-2:00 ....
然后对这个字段进行groupby
-----
http://www.8421.org
 
是否这样子后,视图中,0:00-2:00,2:00-4:00,4:00-6:00,三个时段中各有一条记录?
 
如果这条记录时间在某个范围,那这个字段的值就是某个范围,如
1998-12-23 01:23:40 对应 0:00-2:00
估计只有弄个函数
create view v1 as select ....,datefield,GetTimeRange(datefield) as TimeRange
from ..
 
开始时间>起始时间 结尾时间>终止时间 为1
开始时间<起始时间 结尾时间>终止时间 为1
用 case 语句
 
后退
顶部