不同数据库计算时间日期的平均值

不同数据库计算时间日期的平均值

mysql
select avg(timestampdiff(second,start_date_time,end_date_time)) from table where timestamp(start_date_time) >= '2020-12-12 12:12:12';
	其中timestampdiff函数中的入参设为second查出来的是秒数,还可以换为minutehourday、week、monthyear,分别为分钟、小时、天数、周、月、年。
	查询mysql的时间戳格式为条件查询数据时,可以在日期字段前增加timestamp函数,也可以不加,我试过好像也没啥影响。
oracle
select avg((end_date_time - start_date_time)*24) from table where start_date_time>= to_date('2020-12-12 12:12:12','yyyy-mm-dd hh24:mi:ss');
	其中计算出来的日期为天,乘了24表示计算的是小时,然后需要分钟就在乘60,需要星期就除7,以此类推。
	查询oracle的时间戳格式为条件查询数据时,查询条件需要增加to_date函数,后面的hh24也可以改为hh12,这个要看表中这个字段的数据是按什么时间格式存储的。

版权声明:本文为zjw97257248原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。