技术文章
当前位置:首页 > Mysql技术文章 > MySQL中日期和时间戳互相转换的函数和方法

MySQL中日期和时间戳互相转换的函数实例用法

  • 发布时间:
  • 作者:码农之家原创
  • 点击:138

这篇文章主要知识点是关于MySQL、日期、时间戳、互相转换、函数、方法、mysql 获取当前日期函数及时间格式化参数详解 的内容,如果大家想对相关知识点有系统深入的学习,可以参阅以下电子书

PHP&MySQL跨设备网站开发实例精粹
  • 类型:PHP编程大小:80.9 MB格式:PDF出版:清华大学出版社作者:陈惠贞,陈俊荣
立即下载

更多Mysql相关的学习资源可以参阅 Mysql电子书程序设计电子书 等栏目。

MySQL中日期和时间戳互相转换的函数和方法

① 时间戳转换成日期

复制代码 代码如下:

FROM_UNIXTIME

例如:

 

数据表中 invest_time 存储的是时间戳,如 1429063399

使用 FROM_UNIXTIME 可以把时间戳转换为日期:

复制代码 代码如下:

select FROM_UNIXTIME(invest_time,'%Y年%m月%d') from crm_invest_apply

执行结果:

 

MySQL中日期和时间戳互相转换的函数和方法

② 把日期转换为时间戳,和 FROM_UNIXTIME 正好相反

复制代码 代码如下:

UNIX_TIMESTAMP

例如:
复制代码 代码如下:

SELECT UNIX_TIMESTAMP('2015-04-29')

执行结果:

 

MySQL中日期和时间戳互相转换的函数和方法

mysql 获取当前日期函数及时间格式化参数详解

MYSQL 获取当前日期及日期格式
获取系统日期: NOW()
格式化日期: DATE_FORMAT(date, format)
注: date:时间字段
format:日期格式

返回系统日期,输出 2009-12-25 14:38:59
select now();
输出 09-12-25
select date_format(now(),'%y-%m-%d');

根据format字符串格式化date值:

%S, %s 两位数字形式的秒( 00,01, ..., 59)
%I, %i 两位数字形式的分( 00,01, ..., 59)
%H 两位数字形式的小时,24 小时(00,01, ..., 23)
%h 两位数字形式的小时,12 小时(01,02, ..., 12)
%k 数字形式的小时,24 小时(0,1, ..., 23)
%l 数字形式的小时,12 小时(1, 2, ..., 12)
%T 24 小时的时间形式(hh:mm:ss)
%r 12 小时的时间形式(hh:mm:ss AM 或hh:mm:ss PM)
%p AM或PM
%W 一周中每一天的名称(Sunday, Monday, ..., Saturday)
%a 一周中每一天名称的缩写(Sun, Mon, ..., Sat)
%d 两位数字表示月中的天数(00, 01,..., 31)
%e 数字形式表示月中的天数(1, 2, ..., 31)
%D 英文后缀表示月中的天数(1st, 2nd, 3rd,...)
%w 以数字形式表示周中的天数( 0 = Sunday, 1=Monday, ..., 6=Saturday)
%j 以三位数字表示年中的天数( 001, 002, ..., 366)
%U 周(0, 1, 52),其中Sunday 为周中的第一天
%u 周(0, 1, 52),其中Monday 为周中的第一天
%M 月名(January, February, ..., December)
%b 缩写的月名( January, February,...., December)
%m 两位数字表示的月份(01, 02, ..., 12)
%c 数字表示的月份(1, 2, ...., 12)
%Y 四位数字表示的年份
%y 两位数字表示的年份
%% 直接值“%”

以上就是本次给大家分享的关于Mysql的全部知识点内容总结,大家还可以在下方相关文章里找到MySQL 5.7增强版Semisync Repl、 MySQL性能优化总结、 MySQL中的CONCAT函数使用方法、 等mysql文章进一步学习,感谢大家的阅读和支持。

上一篇:Mysql允许外网访问的具体设置方法

下一篇:彻底解决MySQL无法启动的实例方法

展开 +

收起 -

相关电子书
学习笔记
网友NO.500699

mysql中取系统当前时间,当前日期方便查询判定的代码

php中常通过下面的代码,得到判定日期的sql查询语句 $now = time(); //获取当期的日期 $sql="select * from `team` where end_time$now ORDER BY sort_order limit 0,4"; 获取当前时间的MySql时间函数 处理MySql时间日期的函数有很多,下面为您介绍的就是用于获取当前时间的MySql时间函数,如果您对此感兴趣的话,不妨一看 下面为您介绍的MySql时间函数用于获取当前时间,该MySql时间函数极具实用价值,希望能对您学习MySql时间函数方面有所帮助。 mysql select current_timestamp(); +---------------------+ | current_timestamp() | +---------------------+ | 2010-01-18 21:24:37 | +---------------------+ 1 row in set (0.00 sec) mysql select current_date(); +----------------+ | current_date() | +----------------+ | 2010-01-18 | +----------------+ 1 row in set (0.00 sec) mysql select current_time(); +----------------+ | current_time() | +----------------+ | 21:24:46 | +----------------+ 1 ro……

网友NO.525785

mysql的日期和时间函数

下面的查询选择所有 date_col 值在最后 30 天内的记录。 mysql SELECT something FROM tbl_name WHERE TO_DAYS(NOW()) - TO_DAYS(date_col) = 30; DAYOFWEEK(date) 返回 date 的星期索引(1 = Sunday, 2 = Monday, ... 7 = Saturday)。索引值符合 ODBC 的标准。 mysql SELECT DAYOFWEEK('1998-02-03'); - 3 WEEKDAY(date) 返回 date 的星期索引(0 = Monday, 1 = Tuesday, ... 6 = Sunday): mysql SELECT WEEKDAY('1998-02-03 22:23:00'); - 1 mysql SELECT WEEKDAY('1997-11-05'); - 2 DAYOFMONTH(date) 返回 date 是一月中的第几天,范围为 1 到 31: mysql SELECT DAYOFMONTH('1998-02-03'); - 3 DAYOFYEAR(date) 返回 date 是一年中的第几天,范围为 1 到 366: mysql SELECT DAYOFYEAR('1998-02-03'); - 34 MONTH(date) 返回 date 中的月份,范围为 1 到 12: mysql SELECT MONTH('1998-02-03'); - 2 DAYNAME(date) 返回 date 的星期名: mysql SELECT DAYNAME("1998-02-05"); - 'Thursday' MONTHNAME(date) 返回 date 的月份名: mysql SELECT MONTHNAME("1998-0……

网友NO.858228

mysql 获取昨天日期、今天日期、明天日期以及前一个小时和后一个小时的时间

1、当前日期 select DATE_SUB(curdate(),INTERVAL 0 DAY) ; 2、明天日期 select DATE_SUB(curdate(),INTERVAL -1 DAY) ; 3、昨天日期 select DATE_SUB(curdate(),INTERVAL 1 DAY) ; 4、前一个小时时间 select date_sub(now(), interval 1 hour); 5、后一个小时时间 select date_sub(now(), interval -1 hour); 6、前30分钟时间 select date_add(now(),interval -30 minute) 7、后30分钟时间 select date_add(now(),interval 30 minute) 取得当天: SELECT curdate(); mysql SELECT curdate(); +------------+ | curdate() | +------------+ | 2013-07-29 | +------------+ 取得当前日期: mysql select now(); +---------------------+ | now() | +---------------------+ | 2013-07-29 22:10:40 | +---------------------+ 取得前一天: mysql select date_sub(curdate(),interval 1 day); +------------------------------------+ | date_sub(curdate(),interval 1 day) | +------------------------------------+ | 2013-07-28 | +------------------------------------+ 括号中为当天时间的前一天……

网友NO.916576

Mysql根据时间查询日期的优化技巧

例如查询昨日新注册用户,写法有如下两种: EXPLAINselect * from chess_user u where DATE_FORMAT(u.register_time,'%Y-%m-%d')='2018-01-25';EXPLAINselect * from chess_user u where u.register_time BETWEEN '2018-01-25 00:00:00' and '2018-01-25 23:59:59'; register_time 字段是datetime类型,转换为日期再匹配,需要查询出所有行进行过滤。而第二种写法,可以利用在register_time字段上建立索引,查询极快! 附上日期转换函数 DECLARE yt varchar(10); #昨天 DECLARE yt_bt varchar(19); #昨天开始时间 DECLARE yt_et varchar(19); #昨天结束时间 #设置变量 SET yt=DATE_FORMAT(DATE_ADD(now(),INTERVAL -1 day),'%Y-%m-%d'); SET yt_bt=DATE_FORMAT(DATE_ADD(now(),INTERVAL -1 day),'%Y-%m-%d 00:00:00'); SET yt_et=DATE_FORMAT(DATE_ADD(now(),INTERVAL -1 day),'%Y-%m-%d 23:59:59'); 总结 以上所述是小编给大家介绍的Mysql根据时间查询日期的优化技巧,希望对大家有所帮助,如果大家有任何疑问请给我……

<
1
>

Copyright 2018-2020 xz577.com 码农之家

电子书资源由网友、会员提供上传,本站记录提供者的基本信息及资源来路

鸣谢: “ 码小辫 ” 公众号提供回调API服务、“ 脚本CDN ”提供网站加速(本站寻求更多赞助支持)

版权投诉 / 书籍推广 / 赞助:520161757@qq.com

上传资源(网友、会员均可提供)

查看最新会员资料及资源信息