每天每10分钟发生一次最大值。 [英] get max value occurred within every 10 minute of a day.

查看:85
本文介绍了每天每10分钟发生一次最大值。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

你好......



我有一个名为pointdb的表,其中包含SOLAR_ACTIVE_POWER_G_VAL0,LOAD_ACTIVE_POWER_G_VAL0,时间戳列。它包含每一秒的明智数据。我希望在每隔10分钟内显示最大SOLAR_ACTIVE_POWER_G_VAL0和最大LOAD_ACTIVE_POWER_G_VAL0。因为我已经写了如下查询



hello...

i have a table named pointdb containing SOLAR_ACTIVE_POWER_G_VAL0,LOAD_ACTIVE_POWER_G_VAL0, timestamp columns. it contains every second wise data. i wanted to display max of SOLAR_ACTIVE_POWER_G_VAL0 and max of LOAD_ACTIVE_POWER_G_VAL0 occurred within every 10 minute of intereval. for that i have written a query as follows

SELECT max(SOLAR_ACTIVE_POWER_G_VAL0) AS Solar,max(LOAD_ACTIVE_POWER_G_VAL0) AS Load, (DATEPART(MINUTE, [timestamp]) % 10) AS [Minutes]
FROM pointdb WHERE CONVERT(varchar,[timestamp],101) in('03/07/2014')
GROUP BY (DATEPART(MINUTE, [timestamp]) % 10)





但它没有给出正确的输出。

plz给我正确的解决方案。



but it is not giving right output.
plz give me right solution.

推荐答案

(DATEPART(MINUTE,[timestamp])%10)将是相同的一天中的任何一小时。这意味着,你必须以某种方式获得该值的小时。我建议使用

(DATEPART(MINUTE, [timestamp]) % 10) will be the same for any hour of the day. That means, you have to get the hour into that value somehow. I'd suggest to use
(DATEPART(HOUR, [timestamp]) * 10 + DATEPART(MINUTE, [timestamp]) % 10)



(在SELECT和GROUP BY中)。


(both in SELECT and GROUP BY).


这篇关于每天每10分钟发生一次最大值。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆