1、查询当前日期最近的一条数据
select top 1 * from 表名 order by abs(datediff(d,表列名,时间参数))
例:查询据距2018/5/7 4:44:00 日期最近并且hole_no=1的一条数据;hole_no为表列名
select top 1 * from COKERY_RECORD where hole_no=1 order by abs(datediff(d,charge_time,'2018/5/7 4:44:00'))
2、查询两个日期之间的数据
"select flue_no,avg(flue_temper) as flue_temper from FLUE_TEMPER where cokery_no = " + cokery_no + "and temper_pos=1 and temper_time is not null " +
"and temper_time > '" + DateTime.Parse(dateTimePicker1.Text).AddHours(-24).AddSeconds(1) + "' and temper_time <= '" + DateTime.Parse(dateTimePicker1.Text).AddDays(-1) + "' group by flue_no order by flue_no"
运行时具体效果:
select COUNT(*) as counts,avg(flue_temper) as fdavg from FLUE_TEMPER where cokery_no = 1 and temper_time is not null and temper_time > '2018/5/1 0:00:00' and temper_time <= '2018/5/1 23:59:59'