问题描述
我在数据库中每2分钟存入一条数据,但中间会有中断情况,就是可能半小时内没有数据,也可能有很多条数据,现在想取半小时内的第一条数据或者半小时内的平均值,想问下各位大侠有无好的方法,不想用循环,我的数据量很大,循环很慢。之前用时间条件后加datediff(minute,startime,time)%30=0,只能取到整半小时的数据,而我的数据可能是31分,1分,这样就取不到数据。
解决方案
解决方案二:
1、在数据库的操作:做个标识列,取最大值。或者按时间排序,取半小时内的数据。2、在软件里用个内存表存最近半小时内的数据,想用的时候就调用。
解决方案三:
--column:是你要取平均值得列--starttime:随便取个时间值--columntime:你录入数据的时间列selectavg(column)fromtablegroupbydatediff(minute,starttime,columntime)/30
时间: 2024-12-02 07:19:33