我的一个关于时间字段的问题(50分)

  • 主题发起人 主题发起人 ifcansee
  • 开始时间 开始时间
I

ifcansee

Unregistered / Unconfirmed
GUEST, unregistred user!
有这样一个表
DATETIME A B C
2002-11-01 01:00:00 .. .. ..
2002-11-01 02:00:00
2002-11-01 03:00:00
2002-11-01 04:00:00
2002-11-02 01:00:00
2002-11-02 02:00:00
2002-11-02 03:00:00
2002-11-02 04:00:00
2002-11-03 01:00:00
2002-11-03 02:00:00
2002-11-03 03:00:00
2002-11-03 04:00:00 .. .. ..
...
我想得到每个时区的平均值
TIME A B C
01
02
03
04 .. .. ..
应该怎么做
 
select convert(char(2),[DATETIME],108) Time,avg(A) A,avg(B) B,avg(C) C
from 表名 group by Time
 
convert(char(2),[DATETIME],108) 什么意思,怎么用法?
 
convert(char(2),[DATETIME],108) 是取DATETIME字段的小时的字符串,
 
我试试看
 
用的sql server7.0数据库,该字段为timestamp类型
 
好像不行啊,提示TIME字段错误
 
select convert(char(2),[DATETIME],108),A,B,C FROM TABLE1.DBF
这样是可以的
 
select DATEPART(DateTime) Time,avg(A) A,avg(B) B,avg(C) C
from 表名 group by DATEPART(DateTime)
 
不好意思应该是这样:
select DATEPART(Hour,DateTime) Time,avg(A) A,avg(B) B,avg(C) C
from 表名 group by DATEPART(Hour,DateTime)
 
接受答案了.
 
后退
顶部