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这里写代码片`语句中,这样如果销售时间字段有建立索引,是可以用上索引的。
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
相关推荐
-
MySQL timestamp的类型与时区实例详解
MySQL timestamp的类型与时区 MySQL的timestamp类型时间范围between '1970-01-01 00:00:01' and '2038-01-19 03:14:07',超出这个范围则值记录为'0000-00-00 00:00:00',该类型的一个重要特点就是保存的时间与时区密切相关,上述所说的时间范围是UTC(Universal Time Coordinated)标准,指的是经度0度上的标准时间,我国日常生活中时区以首都北京所处的东半球第8区为基准,统一使用东8区
-
MySQL timestamp自动更新时间分享
通常表中会有一个Create date 创建日期的字段,其它数据库均有默认值的选项.MySQL也有默认值timestamp,但在MySQL中,不仅是插入就算是修改也会更新timestamp的值! 这样一来,就不是创建日期了,当作更新日期来使用比较好! 因此在MySQL中要记录创建日期还得使用datetime 然后使用NOW() 函数完成! 1,TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP 在创建新记录和修改现有记
-
Sqlserver timestamp数据类使用介绍
在SQL Server中联机丛书是这样说的: SQL Server timestamp 数据类型与时间和日期无关.SQL Server timestamp 是二进制数字,它表明数据库中数据修改发生的相对顺序.实现 timestamp 数据类型最初是为了支持 SQL Server 恢复算法.每次修改页时,都会使用当前的 @@DBTS 值对其做一次标记,然后 @@DBTS 加1.这样做足以帮助恢复过程确定页修改的相对次序,但是 timestamp 值与时间没有任何关系. 我用口水话解释一下便于理解:
-
MySQL错误TIMESTAMP column with CURRENT_TIMESTAMP的解决方法
在部署程序时遇到的一个问题,MySQL定义举例如下: 复制代码 代码如下: CREATE TABLE `example` ( `id` INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, `created` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, `lastUpdated` TIMESTAMP NOT NULL ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`id`)
-
mysql From_unixtime及UNIX_TIMESTAMP及DATE_FORMAT日期函数
from_unixtime()是MySQL里的时间函数 date为需要处理的参数(该参数是Unix 时间戳),可以是字段名,也可以直接是Unix 时间戳字符串 后面的 '%Y%m%d' 主要是将返回值格式化 例如: mysql>SELECT FROM_UNIXTIME( 1249488000, '%Y%m%d' ) ->20071120 mysql>SELECT FROM_UNIXTIME( 1249488000, '%Y年%m月%d' ) ->2007年11月20 UNIX_TI
-
mysql之TIMESTAMP(时间戳)用法详解
一.TIMESTAMP的变体 TIMESTAMP时间戳在创建的时候可以有多重不同的特性,如: 1.在创建新记录和修改现有记录的时候都对这个数据列刷新: TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP 2.在创建新记录的时候把这个字段设置为当前时间,但以后修改时,不再刷新它: TIMESTAMP DEFAULT CURRENT_TIMESTAMP 3.在创建新记录的时候把这个字段设置为0,以后修改时刷新它: TIMES
-
SQL计算timestamp的差值的方法
SQL计算timestamp的差值的方法 概述 有时候我们需要按照时间找出某些记录,比如说:算出离销售时间前1个小时的记录. 通常我们可以使用MYSQL的timestampdiff函数来做,但是这样没法使用到索引,如果数据量大的话,会造成慢查询. 用代码计算出时间后再传给SQL 我们可以利用JAVA代码,先把时间计算好,然后传给SQL语句,避免使用MYSQL的函数. public long xxxx(long sellTimeFrom){ Calendar calendar = Calendar
-
在 SQL 语句中处理 NULL 值的方法
在日常使用数据库时,你在意过NULL值么? 其实,NULL值在数据库中是一个很特殊且有趣的存在,下面我们一起来看看吧: 在查询数据库时,如果你想知道一个列(例如:用户注册年限 USER_AGE)是否为 NULL,SQL 查询语句该怎么写呢? 是这样: SELECT * FROM TABLE WHERE USER_AGE = NULL 还是这样? SELECT * FROM TABLE WHERE USER_AGE IS NULL 当然,正确的写法应该是第二种(WHERE USER_AGE IS
-
python实现计算资源图标crc值的方法
本文实例讲述了python实现计算资源图标crc值的方法,分享给大家供大家参考.具体方法如下: 实现该功能的关键在于解析资源信息,找到icon的数据,然后计算这些数据的crc 具体实现代码如下: def _get_iconcrc(self, file_path): """ Generates the crc32 hash of the icon of the file. @return: str, the str value of the file's icon "
-
Java计算文本MD5加密值的方法示例
本文实例讲述了Java计算文本MD5加密值的方法.分享给大家供大家参考,具体如下: java计算文本MD5值,用于加密 import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; public class GetMd5 { public static void main(String[] args) { String a="123"; System.out.println(getM
-
如何利用moment处理时间戳并计算时间的差值
项目使用nodejs写服务端,有个功能就是统计代理服务器流量,然后把统计的数据通过echarts渲染到页面. 当然统计数据这里用到了 定时器,在使用的是 var schedule = require( 'node-schedule'); 有兴趣的同学可以在npm上搜一搜关于js定时任务的事,其实都大同小异,差不多都是运用corn表达式. 以下是我的 定时从代理服务器获取数据 并存库. schedule.scheduleJob('*/15 * * * * * ', function () { co
-
在python 不同时区之间的差值与转换方法
之前有个程序,里面有个时间部分是按照国内时区,也就是东八区,来写的,程序中定义了北京时间2点到八点进行检查:后面程序在国外机器上,例如说韩国,欧美等,执行的时候发现会有时间上的问题,因为获取的是机器的本地时间 因为机器上不好装包,只能通过常用的模块进行改写了 原先的代码如下: #self.invalidStartTime = datetime.time(2,00) #self.invalidEndTime = datetime.time(8,59) 为了计算时区的差值并对以上两行代码的时间进行转
-
SQL Server中关于基数估计计算预估行数的一些方法探讨
关于SQL Server 2014中的基数估计,官方文档Optimizing Your Query Plans with the SQL Server 2014 Cardinality Estimator里有大量细节介绍,但是全部是英文,估计也没有几个人仔细阅读.那么SQL Server 2014中基数估计的预估行数到底是怎么计算的呢? 有哪一些规律呢?我们下面通过一些例子来初略了解一下,下面测试案例仅供参考,如有不足或肤浅的地方,敬请指教! 下面实验测试的环境主要为SQL Server 201
-
Mysql 相邻两行记录某列的差值方法
表结构: 数据: 需求: 按照company_id不同分组,然后分别求出相同company_id相邻记录touch_time的差值 SQL: select r1.company_id, r1.touch_time, r2.touch_time, r1.touch_time - r2.touch_time from (select (@rownum := @rownum + 1) as rownum, info.company_id, info.touch_time from sys_touch_
-
php计算2个日期的差值函数分享
非常简单实用的函数分享给大家, 奉上代码: 复制代码 代码如下: /** * 日期-计算2个日期的差值 * @return int */ public function get_difference($date, $new_date) { $date = strtotime($date); $new_date = strtotime($new_date); return abs(ceil(($date
-
C#计算字符串哈希值(MD5、SHA)的方法小结
本文实例讲述了C#计算字符串哈希值(MD5.SHA)的方法.分享给大家供大家参考.具体如下: 一.关于本文 本文中是一个类库,包括下面几个函数: ① 计算32位MD5码(大小写):Hash_MD5_32 ② 计算16位MD5码(大小写):Hash_MD5_16 ③ 计算32位2重MD5码(大小写):Hash_2_MD5_32 ④ 计算16位2重MD5码(大小写):Hash_2_MD5_16 ⑤ 计算SHA-1码(大小写):Hash_SHA_1 ⑥ 计算SHA-256码(大小写):Hash_SHA
随机推荐
- 比较实用的正则表达式学习笔记
- 编程趣事:当下流行编程语言的”讨厌”程度排行榜
- SQL Server 2008+ Reporting Services (SSRS)使用USER登录问题
- 解析页面加载与js函数的执行 onload or ready
- 可关闭与最小化的右下角浮动广告代码
- HttpsURLConnection上传文件流(实例讲解)
- Oracle字符函数应用检测汉字的方法
- YII Framework的filter过滤器用法分析
- linux系统使用python获取内存使用信息脚本分享
- PHP乱码问题,UTF-8乱码常见问题小结
- javascript实现Table排序的方法
- js函数使用技巧之 setTimeout(function(){},0)
- 详解js中Number()、parseInt()和parseFloat()的区别
- pymongo实现控制mongodb中数字字段做加法的方法
- 详解vue-cli 接口代理配置
- Express下采用bcryptjs进行密码加密的方法
- 微信小程序实现跑马灯效果完整代码(附效果图)
- 易语言lineto函数的用法总结
- VueJs里利用CryptoJs实现加密及解密的方法示例
- linux环境下Django的安装配置详解