Chinaunix

标题: 【求助】sybase中,按照整数字段分组 [打印本页]

作者: uman    时间: 2011-08-11 10:02
标题: 【求助】sybase中,按照整数字段分组
是这样的,有个字段是整型,就是unixtime了
我想按这个字段分组统计每天的情况,
例如
select count(1) from table where unix_time between 1312732800 and 1312819200
..........

这是某一天
基本是每天都有
那么如何实现按unix time字段分组,每天增加86400秒。
作者: uman    时间: 2011-08-11 16:26
就是类似excel的数据透视表的时候的分组功能
作者: chenfeng825    时间: 2011-08-11 16:43
用join一个连续序列吧
select count(1), o.id from table  join sysobjects on unix_time between 1312732800 +(id-1)*86400 and 1312732800+o.id*86400
where id <=10 group by o.id

这里用sysobjects只是连续序号而已,如果日期很长,自己造一个吧。日期unixtime到正常日期显示也自己处理一下就ok
作者: andkylee    时间: 2011-08-12 09:28
1312732800 是基于1970-1-1开始计算的吧?
使用dateadd函数计算出来具体的日期,再group by统计处理。

1> select dateadd(ss,1312732800,'1970-1-1')
2> go

--------------------------
        Aug  7 2011  4:00PM

(1 row affected)
1> select dateadd(ss,1312819200,'1970-1-1')
2> go

--------------------------
        Aug  8 2011  4:00PM

(1 row affected)
作者: hobbylu    时间: 2011-08-12 09:35
你可以把你要的数据的结果展现给大家看,然后再想办法
作者: Eisen    时间: 2011-08-12 10:13
如果ASE15.0.2及以上的话,可以考虑使用计算列




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2