mysql数据库中关于时间的比较
2015-02-08 18:03
190 查看
问题背景;
1、影片开始时间大于当前时间不足15分钟时为暂停购票
超过15分钟即可购票
解决方案:
startTime为varchar类型:STR_TO_DATE(StartTime,'%Y-%m-%d %H:%i:%s')转变为date类型
mysql查询语句:
SELECT (UNIX_TIMESTAMP(STR_TO_DATE(StartTime,'%Y-%m-%d %H:%i:%s'))-UNIX_TIMESTAMP(NOW())) AS
"ss",ScreenCode,StartTime
from ec_movie_planInfo
WHERE (UNIX_TIMESTAMP(STR_TO_DATE(StartTime,'%Y-%m-%d %H:%i:%s'))-UNIX_TIMESTAMP(NOW()))>15*60
UNIX_TIMESTAMP()将时间转换为时间戳,两者相减得到两个时间之间的秒数
2、mysql语句的时间格式化
解决方案:
DATE_FORMAT(date,format)函数,而format的格式可以为:%Y-%m-%d,但是写成‘yyyy-mm-dd’就不行
所以'%Y-%m-%d %h:%i:%s'-----》‘yyyy-mm-dd HH:mm:ss’
'%Y-%m-%d'----》‘yyyy-mm-dd’
1、影片开始时间大于当前时间不足15分钟时为暂停购票
超过15分钟即可购票
解决方案:
startTime为varchar类型:STR_TO_DATE(StartTime,'%Y-%m-%d %H:%i:%s')转变为date类型
mysql查询语句:
SELECT (UNIX_TIMESTAMP(STR_TO_DATE(StartTime,'%Y-%m-%d %H:%i:%s'))-UNIX_TIMESTAMP(NOW())) AS
"ss",ScreenCode,StartTime
from ec_movie_planInfo
WHERE (UNIX_TIMESTAMP(STR_TO_DATE(StartTime,'%Y-%m-%d %H:%i:%s'))-UNIX_TIMESTAMP(NOW()))>15*60
UNIX_TIMESTAMP()将时间转换为时间戳,两者相减得到两个时间之间的秒数
2、mysql语句的时间格式化
解决方案:
DATE_FORMAT(date,format)函数,而format的格式可以为:%Y-%m-%d,但是写成‘yyyy-mm-dd’就不行
所以'%Y-%m-%d %h:%i:%s'-----》‘yyyy-mm-dd HH:mm:ss’
'%Y-%m-%d'----》‘yyyy-mm-dd’
相关文章推荐
- 关于MySQL数据库时间比较
- 关于时间比较的一个算法
- .net 中关于两个时间的比较
- sql 语句关于时间的比较; 直接用大于小于就好了; 注意时间格式; 也可以直接比较到秒
- 关于ArrayList与LinkedList的add时间比较
- 一个比较愚蠢的办法,解决excel表,关于导出时间类型转换成QString的问题
- 给你个比较全的关于时间的操作的东西[转]
- 关于时间比较及转换
- 数据库中关于datetime、date 、time数据类型比较,及插入日期时间数据格式
- 关于JavaScript中使用appendChild和innerHTML动态添加一个元素的时间的比较
- ArrayList 和 HashTable 和 HashSet 和 List 和 Dictionary 之间关于插入查询的时间比较
- Oracle 关于日期时间比较、格式转化等操作
- 关于时间 date的比较
- ACCESS与MSSQL比较:SQL语句关于时间格式使用的注意点
- 关于ASP.net中时间比较的方法 DateTime.Compare()
- 关于oralce 数据库中两个时间的比较
- 关于MySQL数据库如何按时间查询
- 比较全的关于时间的操作的东西
- 关于PHP+MYSQL数据库保存时间的问题
- 关于SQL中时间的比较和格式化问题---填坑