现场一个场站需要一个风速的信息,比较急,说是直接sql语句能够得到也行,后面的话,时间充裕可以通过web界面方便的获取。最近事情有些多,博客都堵在一块了,而且还没时间发布。
TOC
现场需要统计一个新的值,输出10米层月平均风速,月最大风速,月极大风速,月平均气温。
sql语句并不难,主要是理解一下如何进行计算,基本上,数据库存储的是每15min的一个值。
平均风速和平均温度,基本可以通过avg函数实现。
最大风速和极大风速的话,通过max函数可以实现。
综合前面的,基本最后的语句如下了:
select avg(V1AVGSP),max(V1MAXSP),max(V1SP),avg(V1TEMP) from FD_RUN_RTTOWER where TOWERID = 57032999 and time >= TO_DATE('2013-05-01', 'yy-MM-dd') and time < TO_DATE('2013-06-01', 'yy-MM-dd')
添加一下字段说明之后如下:
select avg(V1AVGSP) "10米层月平均风速",max(V1MAXSP) "10米层月最大风速",max(V1SP) "10米层月极大风速",avg(V1TEMP) "10米层月平均风速" from FD_RUN_RTTOWER where TOWERID = 57032999 and time >= TO_DATE('2013-05-01', 'yy-MM-dd') and time < TO_DATE('2013-06-01', 'yy-MM-dd')
结构稍微优化之后如下:
SELECT
AVG (V1AVGSP) "10米层月平均风速",
MAX (V1MAXSP) "10米层月最大风速",
MAX (V1SP) "10米层月极大风速",
AVG (V1TEMP) "10米层月平均风速"
FROM
FD_RUN_RTTOWER
WHERE
TOWERID = 57032999
AND TIME >= TO_DATE ('2013-05-01', 'yy-MM-dd')
AND TIME < TO_DATE ('2013-06-01', 'yy-MM-dd')
只是考虑到功能的实现,并没有测试性能如何,基本上几个where
的顺序变化,对于小库查询的变化不大。
无
20190722 问题解决
20190723 完成文章
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。