mysql-笔记-datetime
1 adddate(date,interval expr unit)--同 date_add()
select date_add('2019-4-20',interval 31 day); select adddate('2019-4-20',interval 31 day);
相关的函数:subdate()同date_sub()
Adddate(expr,days)---Mysql 把days 作为整数 天 加到 expr 上 select adddate('2019-4-20',31);
2 addtime(expr1,expr2) 返回 添加 expr2到expr1上的结果,expr1是一个时间或一个日期 表达式,expr2是一个时间表达式
select addtime('2019-4-20 23:59:59.999999','1 1:1:1.000002');
select addtime('01:00:00.999999','02:00:00.999998');
3 convert_tz(dt,from_tz,to_tz) 时区转化,如果参数无效返回null
4 curdate() 返回当前日期 返回格式:YYYY-MM-DD 或 YYYYMMDD 基于 这个函数用于字符还是数字上下文环境中
select curdate(); select curdate()+0;
current_date,current_date() 同 curdate()
5 curtime([fsp]) 基于上下文环境-返回当前时间 格式:HH:MM:SS 或 HHMMSS
fsp 指定秒 小数位 0-6位
select curtime(); select curtime(2)+0;
6 date(expr) 提取日期部分 select date(expr);
7 datediff(expr1,expr2) 返回 expr1-expr2 天数,参数可以是日期,也可以是日期+时间,但是只计算日期部分
8 date_add(date,interval expr unit); date_sub(date,interval expr unit);
date:指定开始日期
expr:指定要从开始日期 加或减去的数值,被当作字符类型,可以是负数。
unit:是一个关键字 指定 要加或减去的是:年 月 小时、分、秒
返回值 -如果 date 是 Date值只有年月日,则返回 Date类型,如果 第一个参数是 datetime 或 timestamp 值,或者 第一个参数是日期date unit值是小时、分、秒。其他类型则返回字符串
select date_add('2019-04-23',interval 1 day);
select date_sub('2019-4-23',interval 1 year);
9 date_format(date,format) :根据format格式化日期 format内使用说明字符 %是必须的。
select date_format('2019-04-23 22:59:59:00','%W %M %Y');
select date_format('2019-04-23','%d');
10 dayname(date):返回日期在星期几名称 ,名称的语言取决于 lc_time_names 系统变量
select dayname('2019-04-23');
11 Day(date) ; Dayofmonth(date);返回月份中的天 范围:1-31,如果 0000-00-00 或 2019-00-00 天中包含0时 返回 0
12 dayofweek(date):返回天在一周中的序号(1=sunday).select dayofweek('2019-04-23')
13 dayofyear(date) 返回天在一年中序号,范围:1-366
select dayofyear('2019-04-23');
14 extract(unit from date):从date中提取一部分 unit 使用与date_add() 相同的说明符。select extract(year from '2019-04-23');
select extract(year_month from '2019-04-23'); select extract(day_minute from '2019-04-23 01:59:59');
select extract(microsecond from '2019-04-23 10:30:00.000123');
15 from_days(N):从给定的数字天数,返回 一个日期值 select from_days(100000);
16 from_unixtime(unix_timestamp[,format]):返回给定时间戳对应的日期。返类型取决于上下文。
select from_unixtime(100000,'%Y'); select from_unixtime(100000)+0;
17get_format({date|time|datetime|timestamp},{'eur'|'usa'|'jis'|'iso'|'internal'}) 返回一个格式字符串 在date_format() str_to_date() 函数中很有用
select get-format(datetime,'usa');
select date_format('2019-4-23',get_format(date,'eur'));
18 hour(time):从time返回小时 范围:0-23 。如果小时大于23,返回大于23的小时部分
select hour('272:59:59');
19 last_day(date) 从 date 或 datetime的月份中按日期返回相对应的月的最后一天。如果参数不是有效的,则返回null
select last_day('2019-4-23');
20 localtime,localtime([fsp]) 同 now();取本地当前时间
localtimestamp,localtimestamp([fsp]) 同 now() 取本地当前时间
now([fsp]): 返回当前天和时间,根据上下文 返回格式;yyyy-MM-DD HH:MM:SS 或 YYYYMMDDHHMMSS
select now(); select now()+0;
now()返回语句开始执行时间,sysdate() 返回确切的执行时间 select now(),sleep(2),now(); select sysdate(),sleep(2),sysdate();
21 makedate(year,dayofyear):返回 指定年 和 年中天数 对应的日期,dayofyear必须大于0.否则返回null
select makedate(2019,40);select makedate(2019,365);
22 maketime(hour,minute,second):根据参数 返回对应的时间
select maketime(12,15,30);
23 microsecond(expr):从时间或日期 表达式中-返回毫秒 范围:0-999999
select microsecond('12:00:00.123456');
24 minute(time):从时间参数中返回分钟 ,范围:0-59 select minute('2019-04-24 10:05:03');
25 month(date):从日期中返回对应的月份 范围:1-12 或 0 0000-00-00 select month('2019-4-23');
26 period_add(p,n):在时间段P上加上N个月,P的格式 :YYMM 或 YYYYMM 不是一个日期值.返回形式:YYYYMM
select period_add(201904,2);
27 period_diff(p1,p2): 返回p1和p2之间的月数,p1/p2 必须是YYMM 或YYYYMM 格式,且不是日期值
select period_diff(200802,200703);
28 quarter(date):返回日期参数中的季度 。select quarter('2019-04-24');
29 second(time):返回时间参数的秒,范围:0-59。select second('10:05:03');
30 sec_to_time(seconds):从秒参数返回 小时 分 秒 时间值。 select sec_to_time(2378);select sec_to_time(2378)+0;
31 str_to_date(str,format):与 date_format()相反的函数,参数str format是字符串类型,
如果format包含日期和时间-则返回datetime值,如果只有日期或时间,则只返加日期date 或时间time值
如果从str中返的日期、时间是不合法的,则返回null 或产生一个警告
select str_to_date('01,5,2019','%d,%m,%Y'); select str_to_date('May 1,2019','%M %d,%Y');
从str的开头对比,如果 匹配不到format,匹配失败。在str结尾多余的字符被忽略
select str_to_date('a09:30:17','a%h:%i:%s'); select str_to_date('a09:30:17','%h:%i:%s');
select str_to_date('09:30:17a','%h:%i:%s');
没有指定的部分被赋值为0 set sql_mode=''; select str_to_date('9','%m');
如果 sql_mode=no_zero_date 或 no_zero_in_date,0日期或部分为0是不允许的,返回null 或 警告
mysql-笔记-datetime的更多相关文章
- MySQL笔记汇总
[目录] MySQL笔记汇总 一.mysql简介 数据简介 结构化查询语言 二.mysql命令行操作 三.数据库(表)更改 表相关 字段相关 索引相关 表引擎操作 四.数据库类型 数字型 字符串型 日 ...
- 最全mysql笔记整理
mysql笔记整理 作者:python技术人 博客:https://www.cnblogs.com/lpdeboke Windows服务 -- 启动MySQL net start mysql -- 创 ...
- MySql笔记(一)
目录 MySql笔记(一) 每天给自己一个希望,努力做好自己,不为明天烦恼,不为昨天叹息.当梦想还在,告诉自己:努力,就总能遇见更好的自己! MySql笔记(一) 1.创建数据库以及删除 1.创建数据 ...
- 涂抹mysql笔记-数据库中的权限体系
涂抹mysql笔记-数据库中的权限体系<>能不能连接,主机名是否匹配.登陆使用的用户名和密码是否正确.mysql验证用户需要检查3项值:用户名.密码和主机来源(user.password. ...
- centos7.2下安装Mysql笔记
centos7.2下安装Mysql笔记 安装 MySQL 适用于 CentOS 7.0 或以后版本: yum install mariadb mariadb-server 适用于 CentOS 6.8 ...
- Mysql date,datetime的区别以及相互转换
参考:https://blog.csdn.net/a3025056/article/details/62885104/ 在数据库中一直有这三个时间类型有点搞不太清楚. 今天就来说一下之间的区别,其实是 ...
- MySQL笔记(六)游标练习
23.3.1 Trigger Syntax and Examples 意义不明的几道练习,留着备用. 感觉不好写,而且难以调试..不知道以后会不会有实际的应用场景. 环境:MySQL 笔记(三)由 t ...
- mysql 笔记(一)
mysql 笔记 预留 mysql> use mysql; mysql> grant all privileges on *.* to root@'%' identified by &q ...
- 【MySQL笔记】SQL语言四大类语言
SQL语言共分为四大类:数据查询语言DQL,数据操纵语言DML,数据定义语言DDL,数据控制语言DCL. 1. 数据查询语言DQL 数据查询语言DQL基本结构是由SELECT子句,FROM子句, ...
- mysql设置datetime默认值为now
mysql设置datetime默认值为now MYSQL-TIMESTAMP数据类型的默认值与自动更新问题 http://blog.csdn.net/scogeek/article/details/5 ...
随机推荐
- Fescar(Seata)-Springcloud流程分析-1阶段
Fescar是阿里18年开源的分布式事务的框架.Fescar的开源对分布式事务框架领域影响很大.作为开源大户,Fescar来自阿里的GTS,经历了好几次双十一的考验,一经开源便颇受关注.今天就来看了F ...
- kernel 进阶API
1. #define cond_resched() ({ \ ___might_sleep(__FILE__, __LINE__, ); \ _cond_resched(); \ }) int __s ...
- Django-restframework 源码之认证组件源码分析
Django-restframework 源码之认证组件源码分析 一 前言 之前在 Django-restframework 的流程分析博客中,把最重要的关于认证.权限和频率的方法找到了.该方法是 A ...
- Js-函数式编程
前言 JavaScript是一门多范式语言,即可使用OOP(面向对象),也可以使用FP(函数式),由于笔者最近在学习React相关的技术栈,想进一步深入了解其思想,所以学习了一些FP相关的知识点,本文 ...
- angr学习
0.资料 几个主要的网站 angr的github:https://github.com/angr angr的document:https://docs.angr.io/ angr的api:https: ...
- ado.net的简单数据库操作(三)——简单增删改查的实际应用
果然,在犯困的时候就该写写博客,写博客就不困了,哈哈! 上篇我记录了自己的SqlHelper的开发过程,今天记录一下如何使用这个sqlhelper书写一个具有简单增删改查的小实例啦. 实例描述:在数据 ...
- 【Oracle学习笔记】索引
1 简介 1)索引是数据库对象之一,用于加快数据的检索,类似于书籍的索引.在数据库中索引可以减少数据库程序查询结果时需要读取的数据量,类似于在书籍中我们利用索引可以不用翻阅整本书即可找到想要的信息. ...
- c#如何声明数据结构类型为null?
可以通过如下两种方式声明可为空的类型:System.Nullable<T> variable;T?variable:eg:int值是-2,147,483,648 到 2,147,483,6 ...
- 从零开始学安全(四十三)●Wireshark分析ICMP(IP)协议
存活时间与IP分片 这里我们首先来研究一下关于IP协议的两个非常重要的概念:存活时间与IP分片.存活时间(TTL,Time to Live)用于定义数据包的生存周期,也就是在该数据包被丢弃之前,所能够 ...
- 解决Spring MVC前台传参中文乱码问题
在web.xml文件中配置字符编码过滤器: <filter> <filter-name>CharacterEncoding</filter-name> <fi ...