MYSQL—— TIME_TO_SEC函数与UNIX_TIMESTAMP函数区别
今天遇到个需求,统计充电的订单,充电时长,懒得用Java了,直接就在数据库函数搞起来,结果放到线上运行后发现很多充电时长为负数的订单,才发现这个问题。
首先是STR_TO_DATE
这个函数是吧varchar格式的时间转成时间格式,
STR_TO_DATE(begin_charge_time,'%Y-%m-%d %H:%i:%s')
这样就成时间格式了
然后TIME_TO_SEC
返回 time 参数,转换成秒。可以直接在mysql执行
SELECT TIME_TO_SEC('22:23:00'); 结果为 80580
我的写法是
(TIME_TO_SEC (STR_TO_DATE(end_charge_time,'%Y-%m-%d %H:%i:%s')) -TIME_TO_SEC (STR_TO_DATE(begin_charge_time,'%Y-%m-%d %H:%i:%s'))) EquipmentChargeTime
一般都没问题,可我有个订单时间是end_time:2017-05-10 00:35:28,begin_time:2017-05-09 23:28:11
SELECT TIME_TO_SEC('2017-05-10 00:35:28'); 输出为 2128
SELECT TIME_TO_SEC('2017-05-09 23:28:11'); 输出为 84491
相减就是负数了。
原来 TIME_TO_SEC 是把 时分秒转为 秒,并不会对年月日进行处理
UNIX_TIMESTAMP这个函数返回的是自1970年以来的秒数,所以时间计算用这个是靠谱的。
正确使用方式
(UNIX_TIMESTAMP(STR_TO_DATE(end_charge_time,'%Y-%m-%d %H:%i:%s')) -UNIX_TIMESTAMP(STR_TO_DATE(begin_charge_time,'%Y-%m-%d %H:%i:%s'))) EquipmentChargeTime
MYSQL—— TIME_TO_SEC函数与UNIX_TIMESTAMP函数区别相关推荐
- mysql中from unixtime,mysql中FROM_UNIXTIME()和UNIX_TIMESTAMP()函数的区别
摘要 腾兴网为您分享:mysql中FROM_UNIXTIME()和UNIX_TIMESTAMP()函数的区别,作业大师,智慧大学,优化大师,先游等软件知识,以及流星蝴蝶剑,升学指导网软件,承德大宗,q ...
- mysql to unixtime_转 善用mysql中的FROM_UNIXTIME()函数和UNIX_TIMESTAMP()函数
我们经常会面临要从数据库里判断时间,取出特定日期的查询.但是数据库里储存的都是unix时间戳,处理起来并不是特别友好.幸而MYSQL提供了几个处理时间戳的函数,可以帮助我们在查询的时候,就将时间戳格式 ...
- MySQL的FROM_UNIXTIME()和UNIX_TIMESTAMP()函数
FROM_UNIXTIME(unix_timestamp)是MySQL里的时间函数. UNIX_TIMESTAMP() 是与之相对正好相反的时间函数 . e.g. select unix_timest ...
- Mysql中FROM_UNIXTIME()和UNIX_TIMESTAMP()函数
我们经常会面临要从数据库里判断时间,取出特定日期的查询.但是数据库里储存的都是unix时间戳,处理起来并不是特别友好.幸而MYSQL提供了几个处理时间戳的函数,可以帮助我们在查询的时候,就将时间戳格式 ...
- MySQL的FROM_UNIXTIME()和UNIX_TIMESTAMP()函数的区别
2019独角兽企业重金招聘Python工程师标准>>> Unix时间戳(Unix timestamp),是一种时间表示方式,定义为从格林威治时间1970年01月01日00时00分00 ...
- FROM_UNIXTIME()和UNIX_TIMESTAMP()函数的区别
[FROM_UNIXTIME()和UNIX_TIMESTAMP()函数的区别] Unix时间戳(Unix timestamp),是一种时间表示方式,定义为从格林威治时间1970年01月01日00时00 ...
- mysql default unix_timestamp_mysql中的unix_timestamp函数
偶然看到MySQL的一个函数 unix_timestamp(),不明就里,于是就试验了一番. unix_timestamp()函数的作用是返回一个确切的时间点的UNIX时间戳,这个Unix时间戳是一个 ...
- MySQL中的UNIX_TIMESTAMP函数使用总结
转载自:http://www.cnblogs.com/hongfei/archive/2012/06/08/2541599.html MySQL中的UNIX_TIMESTAMP函数有两种类型供调用 1 ...
- 数据库系列之mysql 自定义函数function,函数和存储过程的区别
mysql 自定义函数function,函数和存储过程的区别 https://blog.csdn.net/u010365819/article/details/80470448 https://blo ...
最新文章
- 在Ubuntu上安装Odoo 11(企业版)
- ubuntu时钟不显示的解决方法
- Lombok 的爱恨情仇
- C#基础-面向对象-多态
- partial equation lecture first order pde lecture 1
- 集群批量管理工具parallel ssh的安装及使用
- 推荐安装的Visual Studio Extensions
- JAVA当中Calendar类打印日历表单
- 今天高考,讲几句大实话
- python有几种容器_Python中几种内置的容器(Containers)类型:列表、字典、集合和元组的比较和该注意的点...
- 获取相对于父元素的位置
- 配置spring boot 内置tomcat的accessLog日志
- LeetCode之两个数组的交集
- idea中tomcat不能发布html,idea中Tomcat无法启动成功
- Java实现抓取百度识图结果的实现和思路-1-创造百度识图的URL链接
- elementui 时间选择框选中后限制前后31天
- c++中struct构造函数
- 约当标准型_特征向量到约当标准型
- CodeForces 19E 仙女fairy
- R语言参数检验多重比较