欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

mysql 实现n小时/n分钟为分组

程序员文章站 2022-07-28 15:23:15
SELECTme.value_,me.times,DATE_FORMAT(concat(date(me.times),' ',floor(HOUR (me.times) / 8 ) * 8,':',MINUTE(me.times)),'%Y-%m-%d %H:%i') AS addtimeFROMmain_electric_consumption_table meGROUP BYaddtimeme.time 为 查询时...
SELECT
	me.value_,
	me.times,
	DATE_FORMAT(
		concat(
			date(me.times),
			' ',
			floor(HOUR (me.times) / 8 ) * 8,
			':',
			MINUTE(me.times)
		),
		'%Y-%m-%d %H:%i'
	) AS addtime
FROM
	main_electric_consumption_table me
GROUP BY
	addtime

me.time 为 查询时间,
“8”为间隔时间,
上图所示,按照8小时为时间间隔,并进行分组
想要几分钟或几小时或日,都可以参照以下这一句

floor(HOUR (me.times) / 8 ) * 8,

注:
关于mysql的取整

1.ceil() / ceiling() 向上取整
   ex: ceil(1.2) = 2
2.floor() 向下取整
    ex: floor(1.2) = 1
3.round() 四舍五入

可以结合上面分组的知识点,对分组进行优化处理

本文地址:https://blog.csdn.net/a11131ghj/article/details/107403972

相关标签: mysql