日期:2014-05-18  浏览次数:20516 次

100分百急求意见,建表
因为我现在要建个实时采集(间隔5分钟)电表(电表有好几个)数据的数据库,然后我要用图表来表示出来。。。。图表中有当天的电表数据,一周的数据图表,一月的数据图表,一年的数据图表,平均的数据图表。。。
请问下我需要建急个数据表。。。万分感谢。。。。

------解决方案--------------------
数据多的话就加上周,月,年这些列,也可以不加,条件跟据时间查就行了
一天的Datediff(day,电表采集的时间 ,getdate()) <=1
一周的Datediff(day,电表采集的时间 ,getdate()) <=7
一年的Datediff(Year,电表采集的时间 ,getdate()) <=1
------解决方案--------------------
借用楼上的条件

select
case when Datediff(day,电表采集的时间 ,getdate()) <=1 then 电表显示的数据 else 0 end [day],
case when Datediff(day,电表采集的时间 ,getdate()) <=7 then 电表显示的数据 else 0 end
[week],
case when Datediff(Year,电表采集的时间 ,getdate()) <=1 then 电表显示的数据 else 0 end
[Year]
from tbname
如果需要求和也可以,sum之后再group by
------解决方案--------------------
SQL code
select 
case   when   Datediff(day,datatime   ,getdate()) <1   then   rtrim(dianliang)  else   '0'   end   [days],
case   when   Datediff(day,datatime   ,getdate()) <7   then   rtrim(dianliang)  else   '0'   end   [weeks],
case   when   Datediff(day,datatime   ,getdate()) <30   then   rtrim(dianliang)  else   '0'   end   [moths],
case   when   Datediff(Year,datatime  ,getdate()) <1   then   rtrim(dianliang)   else   '0'   end    [Year]  
from data