mysql中对于时间的处理,时间的滚动,求时间间隔,切换时区等等
mysql中对于时间的处理,时间的滚动,求时间间隔,切换时区等等
在mysql的使用过程中,有时候会出现对时间进行的操作,比如时间向前向后滚动,求2个时间的间隔,或者切换时区的操作
1,时间向前滚动(未来),假如现在有一个开始时间,持续时间,而我的业务只希望知道结束时间,这个时候就需要用到TIMESTAMPADD函数,
DATE_ADD(date,INTERVAL expr type)
date 参数是合法的日期表达式,可以是你需要的时间字段,如start_time(假设这是一个字段名)。
INTERVAL 是固定语法关键词
expr 参数是您希望添加的时间间隔,如 1 2 5。
type 参数可以是下列值:
FRAC_SECOND。毫秒
SECOND。秒
MINUTE。分钟
HOUR。小时
DAY。天
WEEK。星期
MONTH。月
QUARTER。季度
YEAR。年
2, 时间向后滚动(过去),和上面的用法类似,不过这次用的是DATE_SUB函数
DATE_ADD(date,INTERVAL expr type)
date 参数是合法的日期表达式,可以是你需要的时间字段,如start_time(假设这是一个字段名)。
INTERVAL 是固定语法关键词
expr 参数是您希望添加的时间间隔,如 1 2 5。
type 参数可以是下列值:
FRAC_SECOND。毫秒
SECOND。秒
MINUTE。分钟
HOUR。小时
DAY。天
WEEK。星期
MONTH。月
QUARTER。季度
YEAR。年
3,求2个时间的间隔,使用TIMESTAMPDIFF函数,
语法:
TIMESTAMPDIFF(interval,datetime_expr1,datetime_expr2)。
TIMESTAMPDIFF是语法关键词
interval是以什么精度返回
datetime_expr1,第一个时间
datetime_expr2,另一个时间
说明:
返回日期或日期时间表达式datetime_expr1 和datetime_expr2the 之间的整数差。其结果的单位由interval 参数给出。该参数必须是以下值的其中一个:
FRAC_SECOND。表示间隔是毫秒
SECOND。秒
MINUTE。分钟
HOUR。小时
DAY。天
WEEK。星期
MONTH。月
QUARTER。季度
YEAR。年
4, 切换时区的方法,在切换时区的时候考虑到日期变更线的问题,所以采用mysql自带的函数显然是明智之选
CONVERT_TZ(dt,from_tz,to_tz)
转换datetime值dt,从 from_tz 由给定转到 to_tz 时区给出的时区,并返回的结果值。 如果参数无效该函数返回NULL。
mysql> SELECT CONVERT_TZ('2004-01-01 12:00:00','+00:00','+10:00');
+---------------------------------------------------------+
| CONVERT_TZ('2004-01-01 12:00:00','+00:00','+10:00') |
+---------------------------------------------------------+
| 2004-01-01 22:00:00 |
+---------------------------------------------------------+
1 row in set (0.00 sec)
时区方法原地址https://www.yiibai.com/mysql/mysql_function_convert_tz.html
mysql中对于时间的处理,时间的滚动,求时间间隔,切换时区等等的更多相关文章
- 项目中 mysql中的内容关于上架时间和下架时间
隐藏左边导航 在mysql中,是存放的10位的时间截,在后台添加时,时间的格式是:'Y-m-d H:i',没有秒的 字段 字段名称 字段类型 是否为空 默认值 备注 publish_up int(11 ...
- 怎样在mybatis里向mysql中插入毫秒数的时间?
由于业务场景需求,需要记录精准的时间,但是呢,又不要想使用int类型来存储时间,因为这样的可读性比较差了. 怎样在mybatis中向数据库插入毫秒级别的时间呢? 首先,先来看看怎样向数据库中插入毫秒时 ...
- MySQL中常用到的关于时间的SQL
-- 今天 SELECT DATE_FORMAT(NOW(),'%Y-%m-%d 00:00:00') AS dayStart;SELECT DATE_FORMAT(NOW(),'%Y-%m-%d 2 ...
- mysql中独立表空间与共享表空间之前如何切换
环境 mysql版本:5.7.19 官方文档:(https://dev.mysql.com/doc/refman/5.7/en/innodb-multiple-tablespaces.html) 查看 ...
- mysql中的timestamp类型时间比较:unix_timestamp函数
在mysql中,某字段的类型设置为了timestamp,那么我们现在希望取出指定时间段的记录,该如何做呢? 在php中有time()和strtotime()来进行日期和时间戳的格式化,而在mysql中 ...
- mysql中的date、datetime、timestamp你还不知道怎么使用吗
在后端开发中经常会碰到涉及数据库的场景,不知道屏幕前的你有这样的疑惑没有,每每在遇到时间.日期字段总是让人头疼,分不清到底是选date还是datetime,亦或是timestamp,真是抓耳挠腮啊,怎 ...
- MySQL 中 datetime 和 timestamp 的区别与选择
MySQL 中常用的两种时间储存类型分别是datetime和 timestamp.如何在它们之间选择是建表时必要的考虑.下面就谈谈他们的区别和怎么选择. 1 区别 1.1 占用空间 类型 占据字节 表 ...
- MySql中时间比较的实现
unix_timestamp 函数可以接受一个参数,也可以不使用参数.它的返回值是一个无符号的整数.不使用参数,它返回自1970年1月1日0时0分0秒到现在所经过的秒数,如果 使用参数,参数的 ...
- mysql中获取一天、一周、一月时间数据的各种sql语句写法
今天抽时间整理了一篇mysql中与天.周.月有关的时间数据的sql语句的各种写法,部分是收集资料,全部手工整理,自己学习的同时,分享给大家,并首先默认创建一个表.插入2条数据,便于部分数据的测试,其中 ...
- MYSQL 中常用日期时间函数使用
MySQL Date 函数 下面的表格列出了 MySQL 中最重要的内建日期函数: 函数 描述 NOW() 返回当前的日期和时间 CURDATE() 返回当前的日期 CURTIME() 返回当前的时间 ...
随机推荐
- VC学习笔记----STL库
STL = Standard Template Library,标准模板库,惠普实验室开发的一系列软件的统称.它是由Alexander Stepanov.Meng Lee和David R Muss ...
- java 从网上下载文件的几种方式
package com.github.pandafang.tool; import java.io.BufferedOutputStream; import java.io.File; import ...
- C#获取apk版本信息
获取很多人都会问我为什么要写这个博客,原因很简单,这次研发apk版本信息的时候网上查了很多的资料都没有这方面的信息,因此这次功能完了想写下方法,如果以后博友们遇到了可以直接copy,不用花很多的时间, ...
- Java基础之final和static关键字
一.final 根据程序上下文环境,它可以修饰非抽象类.非抽象类成员方法和变量. final类不能被继承,没有子类,final类中的方法默认是final的. ...
- python3 报错:UnicodeDecodeError: 'utf-8' codec can't decode byte 0xd6 in position 201: invalid continuation byte
代码: # -*- coding:utf-8 -*- from urllib import request resp = request.urlopen('http://www.xxx.com') p ...
- notepad ++ 编辑 powershell profile 文件时的诡异问题
使用notepad 编辑 C:\Windows\System32\WindowsPowerShell\v1.0\profile.ps1 时,记事本打开和用notepad++打开显示的内容居然不一样. ...
- 如何深入理解一套MQ消息中间件
怎样算是理解了一套MQ中间件呢?原来一知半解的我列了几个维度:demo跑起来,理解其投递次数的语义,理解其事务的特性等等.这是一种角度,但总有种看山不是山的一知半解的感觉.再问一层,比如为什么Kafk ...
- Fcoin和Coinex,谁更值得投资?
2018年是数字货币市场很熊的一年,大部分币种在这一年下跌超过了90%.但是这一年对于数字货币的发展也是不平凡的,可以说是至关重要的一年.通证经济商业模型在这一年萌芽,并茁壮成长,2018是通证经济元 ...
- mangodb驱动编译
1.Installing the MongoDB C Driver (libmongoc) and BSON library (libbson) Building on Windows with Vi ...
- dia无法输入中文的解决
安装dia后无法输入中文,解决如下: 修改/usr/bin/dia #dia-normal --integrated "$@" dia-normal "$@"