ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

MYSQL 最近知识总结(1)

2021-04-11 14:56:08  阅读:129  来源: 互联网

标签:总结 00 -- 08 知识 MYSQL date 2008 select


-- 关于 mysql时间函数
-- 获取当前日期 2017-08-17
select current_date();
-- 获取当前时间20:03:07
select current_time();
-- 获取当前的日期和时间2017-08-17 20:03:24
select now();  
select sysdate() 
select current_timestamp()
-- 获取datetime的年,月,日
select year(now()); -- 年 2017 
select month(now());-- 月 08
select day(now());	-- 天 17
 -- 返回datetime 的日期部分 2017-08-17  相当于:current_date()
select date(now());
-- 在datetime加上日期或时间		           
--   day 天       hour 小时             minute  分钟   
--   second 秒    microsecond 毫秒      week 星期  
--   month  月    year 	年              quarter  季节 
select date_add(now(),interval 1 day);-- 当前datetime的后一天  2017-08-18 20:05:04
select date_add(now(),interval -1 day);-- 当前datetime的前一天 2017-08-16 2 0:05:04
select date(date_add(now(),interval -1 day));-- 当前datetime的前一天的日期
select date_add(now(),interval 1 month);-- 当前datetime的后一个月
select date_add(now(),interval 1 year); -- 当前datetime的后一个年
-- 日期时间转换函数  %Y 年    %m 月   %d 日   %H 时   %i 分   %s 秒  
-- 中间的“-” 换成别的字符也可以 不加也可以 
select date_format('2088-08-08 18:08:08', '%Y-%m-%d %H:%i:%s'); -- 2088-08-08 13:08:08
-- 如果没有年月日 结果就不是预期结果了 下边可以看到 直接把预期的时分秒转换成了年月日 
select date_format('12:02:06', '%Y-%m-%d %H:%i:%s'); -- 2012-02-06 00:00:00
-- 如果之后时分秒 建议用 time_format  专门来做时间的转换(时分秒)
select time_format('12:02:06','%H:%i:%s');
-- 上边是字符格式转换成时间  下边介绍时间转换成字符串格式 str_to_date

select str_to_date('06-08-2008', '%d-%m-%Y'); -- 2008-08-06  字符串是“-” 分割  后边表达式也要“-” 分割
select str_to_date('06*08*2008', '%d*%m*%Y'); -- 2008-08-06  字符串是“*” 分割  后边表达式也要“*” 分割
select str_to_date('08:09:10', '%h:%i:%s'); -- 08:09:10
select str_to_date('08-09-2008 08:09:30', '%d-%m-%Y %h:%i:%s'); -- 2008-08-09 08:09:30
--  这个函数不知道什么情境下会用  就是计算到现在的天数 从0000年一月一日 开始
select to_days('0000-01-01'); -- 0
select to_days('2008-08-08'); -- 733627
-- time_to_sec 这个是计算总共的秒数 从  00:00:00 开始
-- sec_to_time 把秒数转换成时间     
select time_to_sec('01:00:05'); -- 3605
select sec_to_time(3605); -- '01:00:05'
-- 还有一个很酷炫的函数 构造时间 
-- makdedate(year,dayofyear), maketime(hour,minute,second)
select makedate(2008,31); -- '2001-01-31'   2008年+31天
select makedate(2008,32); -- '2001-02-01'   2008年+32天
select maketime(12,15,30); -- '12:15:30'		时,分,秒

 -- 计算2个日期之间的 差年 天 小时  分 秒 毫秒 等
select timestampdiff(year,'2002-05-01','2001-01-01'); -- -1
select timestampdiff(day ,'2002-05-01','2001-01-01'); -- -485
select timestampdiff(hour,'2008-08-08 12:00:00','2008-08-08 00:00:00'); -- -12
select timestampdiff(MINUTE,'2008-08-08 12:00:00','2008-08-08 00:00:00'); -- -720
select timestampdiff(microsecond ,'2008-08-08 12:00:00','2008-08-08 00:00:00'); --  43200000000

-- %Y 年    %m 月   %d 日   %H 时(大写H是24小时制  小写h是12小时制)   %i 分   %s 秒


标签:总结,00,--,08,知识,MYSQL,date,2008,select
来源: https://blog.51cto.com/u_12198094/2698849

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有