mysql日期函数

mysql 计算两个日期时间的差函数.txt

ε祈祈猫儿з 提交于 2019-12-25 19:49:15
参考:https://blog.csdn.net/qq_27259009/article/details/79139543 1.TIMESTAMPDIFF函数 select TIMESTAMPDIFF(MONTH,'2012-10-01','2013-01-13'); 结果是3; select TIMESTAMPDIFF(DAY,'2019-1-1','2019-01-3'); 比较天数,结果是2。 select TIMESTAMPDIFF(HOUR,'2019-12-25 15:49:35','2019-12-25 16:50:40'); 结果是1。 select TIMESTAMPDIFF(MINUTE,'2019-12-25 15:49:35','2019-12-25 16:50:40'); 结果是61。 参数1,可选: FRAC_SECOND、SECOND、 MINUTE、 HOUR、 DAY、 WEEK、 MONTH、 QUARTER或 YEAR几种类型。 参数2和参数3是待比较的两个时间, 比较是后一个时间减前一个时间。 2.DATEDIFF函数 功能:比较天数。天数 = 参数1 - 参数2。 select DATEDIFF('2013-01-13','2012-10-01'); 结果是104。 参数1,参数2 都是日期。 另外其它的日期函数。 now(

MySql 和Server Sql的差异

雨燕双飞 提交于 2019-12-25 03:11:21
MySql 和 Server Sql 的差异 1 、自增长列的插入: SQLServer 中可以不为自动增长列插入值, MySQL 中需要为自动增长列插入值。 2 、获取当前时间函数 : SQLServer 写法: getdate() MySQL 写法: now() 3 、从数据库定位到表。 Sqlserver 写法:库名 .dbo. 表名 ;或者:库名 .. 表名 (注:中间使用两个点) select password from Info.dbo.users where userName='boss' 或者 select password from Info..users where userName='boss' mysql 写法:库名 . 表名 select password from Info.users where userName='boss' 4 、判断是否存在某个数据库,若存在,则删除 Sqlserver 写法: IF DB_ID('users') IS NOT NULL DROP DATABASE users Mysql 写法: Drop DATABASEif exists users 拓展:若 sqlserver 数据库正在使用中,删除之前,先要把数据库变成 “ 单一用户 ” ,再删除 ALTER DATABASE users SET SINGLE_USER

MySQL基本操作(二)MySQL函数

人走茶凉 提交于 2019-12-24 12:11:15
MySQL函数 1、文本处理函数 Left() 返回串左边的字符 Right() 返回串右边的字符 Length() 返回串的长度 Locate() 找出串的一个子串 Lower() 将串转换为小写 Upper() 将串转换为大写 LTrim() 去掉串左边的空格 RTrim() 去掉串右边的空格 Trim() 去掉串两边的空格 Soundex() 返回串的同音值 Substring() 返回子串的字符 SELECT 列 1 , Upper(列 2 ) AS 列名 FROM 表名 # Upper将文本转化成大写字母 SELECT cust_name , cust_contact FROM customers WHERE Soundex ( cust_contact ) = Soundex ( 'Y.lie' ) ; # Soundex返回Y.lie的同音值 2、日期和时间处理函数 注:无论是插入表、更新表还是WHEREguol查询等,MySQL中日期格式保持 “yyyy-mm-dd”,消除歧义。 AddDate(date,Interval n type) 增加一个日期(天,周等) AddDate(date,days) 增加days天 AddTime(date,second) 增加一个时间(时,分等) SubDate(date,Interval n type) 减少一个日期(天,周等

mysql TIMESTAMP(时间戳)详解——查询最近一段时间操作的记录

女生的网名这么多〃 提交于 2019-12-24 11:48:36
TIMESTAMP的变体 1,TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP 在创建新记录和修改现有记录的时候都对这个数据列刷新 2,TIMESTAMP DEFAULT CURRENT_TIMESTAMP 在创建新记录的时候把这个字段设置为当前时间,但以后修改时,不再刷新它 3,TIMESTAMP ON UPDATE CURRENT_TIMESTAMP 在创建新记录的时候把这个字段设置为0,以后修改时刷新它 4,TIMESTAMP DEFAULT ‘yyyy-mm-dd hh:mm:ss’ ON UPDATE CURRENT_TIMESTAMP 在创建新记录的时候把这个字段设置为给定值,以后修改时刷新它 MySQL目前不支持列的Default 为函数的形式,如达到你某列的默认值为当前更新日期与时间的功能,你可以使用TIMESTAMP列类型下面就详细说明TIMESTAMP列类型 *TIMESTAMP列类型* TIMESTAMP值可以从1970的某时的开始一直到2037年,精度为一秒,其值作为数字显示。 TIMESTAMP值显示尺寸的格式如下表所示: : +---------------+----------------+ | 列类型    | 显示格式    | | TIMESTAMP(14) |

高性能Mysql学习日志(一)

那年仲夏 提交于 2019-12-24 01:19:25
第一章 1.1.mysql服务器逻辑架构图 在架构图中 第一层属于客户端,并不属于mysql,他主要跟mysql进行连接处理、授权认证和安全等交互。 第二层服务层为msql的核心架构,mysql的核心服务都在这里,包括缓存、优化、解析、mysql提供的所有的内置函数(包括日期函数、时间函数、数学函数、加密函数等)以及存储过程、触发器和视图都是在这个地方实现的。 第三层存储引擎层为mysql提供的各种存储引擎,每个存储引擎都有各自的优势劣势,具体之后再展开详细描述。 1.1.1连接管理与安全 每个客户端连接mysql服务器时,都会为他自动创建一个线程,该客户端进行的所有操作都只会单独的在这个线程中执行,服务器会缓存管理这个现在,因此我们客户端不需要对该线程进行管理(销毁或者创建该线程)。 1.1.2优化与执行 在架构图第二层有一个专门负责优化的优化器,它的作用包括重写查询、决定对表的读取顺序、选择最适的索引进行最优查询。 第二层还提供了一个查询缓存,当一个select语句进来时,mysql会对其进行缓存查询,如果存在该查询,则不会再去执行查询解析、优化和执行等过程。 1.2并发控制 1.2.1读写锁 当处理并发读并发写的操作时,由于并发写会导致读操作的结果改变,因此,在读操作时,必须要先保证写操作不发生(通常情况下是对同一条数据或者同一张表来说)。为了解决这种情况

mysql----常用函数

牧云@^-^@ 提交于 2019-12-23 00:33:59
常用函数: 按功能分类为:字符串函数、数值函数、日期时间函数、流程函数、其他函数 字符串函数: concat(s1,2,...sn):字符串拼接,任何字符串与null连接都是null insert(str,x,y,instr):将str的x开始的y个字符换成instr select insert('helloworld',2,3,'AAAAAA'); #hAAAAAAoworld left(str,n):获得str从左边开始的n个字符,如果x为null不返回任何字符 right(str,n):获得str从右边开始的n个字符,如果x为null不返回任何字符 lpad(str,n,pad):用pad在str的左边进行填充,直到长度是n #select lpad('hello',20,'pad') padpadpadpadpadhello rpad(str,n,pad):用pad在str的右边进行填充,直到长度是n #select rpad('hello',20,'pad') hellopadpadpadpadpad lstrim(str),rstrim(str),strim(str):去除str左边、右边、或左右两边的空格 repeat(str,n):将str重复n次 replace(str,a,b):用b替换str中的a #select replace('helloworld','o

mysql常用单行函数

岁酱吖の 提交于 2019-12-22 11:38:07
一、大小写控制函数 LOWER(str) 将str的值全部置为小写字母 select LOWER ( 'ABC' ); --结果: LOWER ( 'ABC' ) abc UPPER(str) 将str的值全部置为大写字母 select UPPER ( 'abc' ); --结果: UPPER ( 'abc' ) ABC 二、字符控制函数 CONCAT(str1,str2,...) 将str1、str2等字符串连接起来 select CONCAT ( 'a' , 'b' , 'c' ); --结果: CONCAT ( 'a' , 'b' , 'c' ) abc SUBSTR(str,pos,len) 从str的第pos位(范围:1~str.length)开始,截取长度为len的字符串 select SUBSTR ( 'abc' , 1 , 2 ); --结果: SUBSTR ( 'abc' , 1 , 2 ) ab LENGTH(str) 获取str的长度 select LENGTH ( 'abc' ); --结果: LENGTH ( 'abc' ) 3 INSTR(str,substr) 获取substr在str中的位置 select INSTR ( 'abc' , 'a' ); --结果: INSTR ( 'abc' , 'a' ) 1 LPAD(str,len,padstr)

MySql常用函数

丶灬走出姿态 提交于 2019-12-22 08:22:49
字符串函数 CONCAT ( s1 , s2 ,....) 字符串连接 INSERT ( str , x , y , instr ) 将指定开始标记到结束的字符串替换为指定字符串 LOWER ( str ) 将字符串所有字符转为小写 UPPER ( str ) 将字符串所有字符串转为大写 LEFT ( str , x ) 返回字符串 str 最左边的 x 个字符 RIGHT ( str , x ) 返回字符串 str 最右边的 x 个字符 LPAD ( str , n , pad ) 在 str 最左边填充 n 个 pad RPAD ( str , n , pad ) 在 str 最右边填充 n 个 pad LTRIM ( str ) 去掉字符串 str 左侧的空格 RTRIM ( str ) 去掉字符串 str 右侧的空格 REPEAT ( str , x ) 返回 str 重复 x 次的结果 STRCMP ( s1 , s2 ) 比较字符串 s1 和 s2 REPLACE ( str , a , b ) 用字符串 b 替换字符串 str 中所有出现的字符串 a TRIM ( str ) 去掉字符串行尾和行头的空格 SUBSTRING ( str , x , y ) 返回从字符串 str x 位置起 y 个字符长度的字串 数学函数 ABS ( x ) 返回 x 的绝对值 CEIL

MySQL高级查询函数(单行函数)

二次信任 提交于 2019-12-21 07:29:27
函数的分类: 1,单行函数:对每一条记录输入值进行计算,得到相应的计算结果,返回给用户,也就是说,每条记录作为一个输入参数,经过函数计算得到每条记录的计算结果。 2,多行函数:对多条记录输入值进行计算,得到多条记录对应的单个结果。 单行函数: ①:字符串函数(用户处理单行的字符数据,比如大小写转换,字符串截取,拼装等) a.LOWER/UPPER(LOWER(str):返回字符串str变为小写字母的字符串.UPPER(str):返回字符串str变为大写字母的字符串)   SELECT UPPER(name) FROM student; //全部大写 SELECT LOWER(name) FROM student; //全部小写 b.CONCAT: CONCAT(str1,str2,...):   1,返回结果为连接参数产生的字符串。   2,如有任何一个参数为NULL ,则返回值为 NULL   3,允许有一个或多个参数 SELECT name,age, CONCAT(name,'-',age) FROM student; 运行的结果为: c.INSERT:把指定(位置,长度)的子字符串替换成目标字符串         格式:INSERT(str,pos,len,newstr)        参数:str:(源字符串) pos:(开始插入的位置, 索引从1开始) len:

mysql资料整理

≯℡__Kan透↙ 提交于 2019-12-21 07:06:38
###SQL的语言分类 1. DQL(Data Query Language):数据查询语言 select 2. DML(Data Manipulate Language):数据操作语言 insert 、update、delete 3. DDL(Data Define Languge):数据定义语言 create、drop、alter 4. TCL(Transaction Control Language):事务控制语言 commit、rollback ###:常见函数 一、单行函数 1、字符函数 concat拼接 substr截取子串 upper转换成大写 lower转换成小写 trim去前后指定的空格和字符 ltrim去左边空格 rtrim去右边空格 replace替换 lpad左填充 rpad右填充 instr返回子串第一次出现的索引 length 获取字节个数 2、数学函数 round 四舍五入 rand 随机数 floor向下取整 ceil向上取整 mod取余 truncate截断 3、日期函数 now当前系统日期+时间 curdate当前系统日期 curtime当前系统时间 str_to_date 将字符转换成日期 date_format将日期转换成字符 4、流程控制函数 if 处理双分支 case语句 处理多分支 情况1:处理等值判断 情况2:处理条件判断 5