SQL计算timestamp的差值的方法

冬天是美丽的,冬天的雪花是雪白的,;冬天,是快乐的。冬天迈着轻盈的脚步向我们走来,秋天挥挥手向我们告别。冬天的雪花,它是大地妈妈最好的装饰品,是树姐姐的快乐精灵。

SQL计算timestamp的差值的方法

概述

有时候我们需要按照时间找出某些记录,比如说:算出离销售时间前1个小时的记录。
通常我们可以使用MYSQL的timestampdiff函数来做,但是这样没法使用到索引,如果数据量大的话,会造成慢查询。

用代码计算出时间后再传给SQL

我们可以利用JAVA代码,先把时间计算好,然后传给SQL语句,避免使用MYSQL的函数。

public long xxxx(long sellTimeFrom){
    Calendar calendar = Calendar.getInstance();
    calendar.setTime(new Date(sellTimeFrom));
    calendar.set(Calendar.HOUR_OF_DAY,calendar.get(Calendar.HOUR_OF_DAY) - 1);
    return calendar.getTime().getTime();
}

这样就可以算出销售时间前一个小时的时间。然后传入SQL这里写代码片`语句中,这样如果销售时间字段有建立索引,是可以用上索引的。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

本文SQL计算timestamp的差值的方法到此结束。用微笑来证明你自己,我可以!小编再次感谢大家对我们的支持!

您可能有感兴趣的文章
centos7安装MySQL教程

国产达梦数据库常用SQL语句(上)

MySQL常用SQL查询语句(含复杂SQL查询)

MySQL细数发生索引失效的情况

mysqlenum字段类型的谨慎如何使用