Mysql中的常用函数:
1.字符串函数:
(1).合并字符串
concat():// concat('M','y',"SQL",'5.5');== MySQL5.5//当传入的参数有一个值为NULL,返回的结果值为NULL
concat_ws();// 指定分隔符插入到字符串中:concat_ws(":",'2017','09');==2017:09,但如果分隔符是NULL的话,结果就为NULL,参数是NULL,不影响结果
(2).比较字符串大小的函数:
select strcmp(字符串1,字符串2);大于返回1,小于返回-1,等于返回0
(3).获取字符串长度的函数:
length(); // 计算空格,指的是传入参数的长度(字节长度),一个汉字是两个字节.
char_length();// 传入参数的字符数(字符长度)
(4).字母大小写转换函数:
UPPER();或者是UCASE()转化为大写
LOWER();
(5).查找字符串:
select FIND_IN_SET(查找字符串,目标字符串集合);// 返回字符串位置的函数,目标字符串是以逗号分割的字符串集合,下标从1开始
select FIELD(查找字符串,目标字符串1,目标字符串2,...........);// 返回字符串位置的函数
LOCATE(str1,str);// 返回str中字符串str1的开始位置
POSITION(str1 IN str);// 返回str中字符串str1的开始位置
INSTR(str,str1); // 返回str中字符串str1的开始位置
ELT(n,str1,str2......,strn);// 返回第n个字符串
MAKE_SET(num,str1,str2,...strn) ;// 先将数值num转化为二进制,然后按照二进制数从参数str1,str2,....,strn中选取相应的字符串
例子:select BIN(5) as 二进制数,MAKE_SET(5,'MYSQL','ORACLE','SQL SERVER','POSTGRESQL') as 选取后的字符串;// 结果为MYSQL,SQL SERVER
(6).截取字符串函数:
LEFT(str,num);// 从左边截取,字符串是str,长度是num
RIGHT(str,num);// 从右边截取,字符串是str,长度是num
SUBSTRING(str,num,len);// 字符串是str,从num位置开始,长度是len,包含num位置
MID(str,num,len);// 字符串是str,从num位置开始,长度是len,包含num位置
(7),去除字符串的首尾空格:
LTRIM(str);// 去除字符串开始处空格
RTRIM(str);// 去除字符串结束处空格
TRIM(str);// 去除字符串首尾空格
(8).替换字符串函数:
INSERT(str,pos,len,newstr);// str是原字符串,pos是需要替换的开始位置,len是替换的长度(根据需要来定),newstr是替换的新字符串
REPLACE(str,substr,newstr);// str是原字符串,substr是需要替换的字符串,newstr是替换substr的字符串,替换所有匹配的字符串
注意:比较以下两个结果:
select replace("THIS IS TEST STRING","IS","IS NOT");// THIS NOT IS NOT TEST STRING,不区分单词,切记
select replace("THIS IS TEST STRING"," IS "," IS NOT ");//THIS IS NOT TEST STRING
2.数值函数:
(1).获取随机数:
RAND(); // 返回的数完全随机
RAND(x); // x表示数字,返回的随机数值是相同的(确定的)
(2).获取整数的函数:
CEIL(x);// 上取整
FLOOR(x);// 下取整
(3).截取数值函数:
TRUNCATE(x,y);// x表示要截取的数值,y表示小数点后几位,也就是保留几位小数,是直接舍去,而不是四舍五入.
(4).四舍五入函数:
ROUND(x);
ROUND(x,y);// 返回数值x保留到小数点后y位
3.日期函数:
(1).获取当前日期和时间函数:
now();// 当前日期和时间
locatime();// 当前日期和时间
current_timestamp();// 当前日期和时间
SYSDTAE();// 当前日期和时间
(2).当前日期:
curdate();// 当前日期
current_date();// 当前日期
(3).当前时间:
curtime();
current_time();
(4).各种方式显示日期和时间:
unix_timestamp(日期类型的字符串);// 将日期类型的字符串转化为整形(秒数),UNIX格式
from_unixtime("整形");// 将整形字符串转化为日期,普通格式
UTC_DATE();// utc日期,只有日期
UTC_TIME();// utc时间 ,只有时间
(5).获取日期和时间各部分值:
SELECT NOW() 当前日期和时间,
  YEAR(NOW()) 年,
  QUARTER(NOW()) 季度,
  MONTH(NOW()) 月,
  WEEK(NOW())星期,
  DAYOFMONTH(NOW()) 天,
  HOUR(NOW()) 小时,
  MINUTE(NOW()) 分,
  SECOND(NOW()) 秒;
(6).月(参数都是日期类型的字符串):
MONTH(date);
MONTHNAME(date);
(7).星期:
week(date);// 年中第几个星期
weekofyear(date);// 年中第几个星期
dayname(date);// 星期,英文显示
dayofweek(date);// 星期(不理解,用下面的)
weekday(date);// 星期,数字表示
(8).天
dayofyear(date);// 年中的第几天
dayofmonth(date);// 月中的第几天
(9).EXTRACT函数
EXTRACT(YEAR from NOW()); // 年
EXTRACT(month from NOW()); // 月
EXTRACT(day from NOW()); // 日
EXTRACT(hour from NOW()); // 时
EXTRACT(minutefrom NOW()); // 分
EXTRACT(second from NOW()); // 秒
(10).计算日期和时间的函数:
SELECT NOW() 当前日期和时间,
  TO_DAYS(NOW()) 相隔天数, // 距离0000年1月1日
  FROM_DAYS(TO_DAYS(NOW())) 一段时间后日期和时间,
  DATEDIFF(NOW(),'2000-12-01') 相隔天数;
(11).与指定日期和时间操作:
ADDDATE(date,n); // 计算date加上n天后的日期
SUBDATE(date,n); // 计算date减去n天后的日期
ADDDATE(d,INTERVAL expr type);// type的类型查看http://www.w3school.com.cn/sql/func_date_add.asp
SUBDATE(d,INTERVAL expr type);
例子:
select adddate(now(),interval '2,3' year_month ) '2年3个月后的日期';
4.系统信息函数
(1).获取MySQL系统信息: 使用\h
SELECT
  VERSION() 版本号,
  DATABASE() 数据库名,
  USER() 用户名;
(2).获取自增长约束的最后ID值
SELECT LAST_INSERT_ID();
(3).其他函数:
IF(value,t f)
如果value是真,返回t,否则返回f
IFNULL(value1,value2)
如果value1不为空返回value1,否则返回value2
CASE WHEN [value1] THEN[result1]…ELSE[default]
END
如果value1是真,返回result1,否则返回default
CASE [expr]WHEN[value1] THEN[result1]…ELSE[default]
END
如果expr等于value1,返回result1,否则返回default
 
函      数
作                用
PASSWORD(str)
实现对字符串str进行加密
FORMAT(x,n)
实现将数字x进行格式化,保留n位小数
INET_ATON(ip)
实现将IP地址转换成数字
INET_NTOA(x)
实现将数字转换成IP
GET_LOCT(name,time)
创建一个持续时间为time的名为name的锁
RELEASE_LOCT(name)
为名为name的锁进行解锁
BENCHMARK(count,expr)
实现将表达式重复执行count次
CONVERT(s USING cs)
实现将字符串s的字符集变成cs
CONVERT(x,type)
实现将x变成type类型
 
 
 

Mysql中的常用函数:的更多相关文章

  1. 日期时间函数 mysql 和sqlserver 中对于常用函数的日期和时间函数的区别

    1. sqlserver中获取时间用getdate(),默认返回格式是2019-01-21 13:58:33.053,具体的年月日,时分秒毫米,年月日之间用短线连接,时分秒之间用冒号连接,秒和毫米之间 ...

  2. mysql存储过程及常用函数

    原文:mysql存储过程及常用函数 一.函数 1.数学函数 CEIL()进一取整 SELECT CEIL(1.2);2 FLOOR()舍一取整 SELECT FLOOR(1.9);9 MOD取余数(取 ...

  3. mysql中的substr()函数

    mysql中的substr()函数和hibernate的substr()参数都一样,就是含义有所不同. 用法: substr(string string,num start,num length); ...

  4. Mysql中使用find_in_set函数查找字符串

    mysql有个表的字段的存储是以逗号分隔的,如domain字段login.s01.yy.com,s01.yy.com,s02.yy.com.现在要查找s01.yy.com这个.我们用like查找好像不 ...

  5. mysql中的group_concat函数的用法

    本文通过实例介绍了MySQL中的group_concat函数的使用方法,比如select group_concat(name) . MySQL中group_concat函数 完整的语法如下: grou ...

  6. SQLServer 中实现类似MySQL中的group_concat函数的功能

    SQLServer中没有MySQL中的group_concat函数,可以把分组的数据连接在一起. 后在网上查找,找到了可以实现此功能的方法,特此记录下. SELECT a, stuff((SELECT ...

  7. Mysql中使用聚合函数对null值的处理

    平时因为对于数据库研习的不深,所以在面试的时候问了一些平常遇到过的问题居然没法很肯定地回答出来,实在让自己很恼怒! 这次让我记忆深刻的一个问题是: 在mysql中使用聚合函数的时候比如avg(t),t ...

  8. socket编程中客户端常用函数

    1 常用函数 1.1   connect() int connect(int sockfd, const struct sockaddr *servaddr, socklen_taddrlen); 客 ...

  9. 25.mysql中的常用工具

    25.mysql中的常用工具25.1 mysql客户端连接工具跳转至mysql安装目录下的bincd C:\Program Files\MySQL\MySQL Server 5.7\binmac下cd ...

随机推荐

  1. 记录一个古老的Sql分页过程

    /* 根据单位ID获取排班信息 For:WXX TIme:2017-11-22 */ ALTER proc [dbo].[proc_ScheduleInfo] )='', --单位ID )='', - ...

  2. [W班]第二次结对作业成绩评价

    作业地址: https://edu.cnblogs.com/campus/fzu/FZUSoftwareEngineering1715W/homework/1016 作业要求: 1.代码具有规范性. ...

  3. 第十二条:考虑实现Comparable接口

    与前面讨论的方法不同,compareTo()方法并没有在Object类中定义.相反,它是Comparable接口中唯一的方法. 一个类的实例对象要想是可以比较大小的,那么这个类需要实现Comparab ...

  4. VMware虚拟机误删除vmdk文件后如何恢复?

    故障描述: Dell R710系列服务器(用于VMware虚拟主机),Dell MD 3200系列存储(用于存放虚拟机文件),VMware ESXi 5.5版本,因意外断电,导致某台虚拟机不能正常启动 ...

  5. 读取.properties的内容1

    属性文件方便于项目进行更改,在项目开发中用的也是非常的普遍,在这里就把属性文件的读取通过代码进行一个小结: package com.oyy.test; import java.io.BufferedI ...

  6. 让linux远程主机在后台运行脚本

    后台挂起:python xxx.py & 在脚本命令后面加入"&"符号就可以后台运行.结束进程:kill -9 sidps -ef | grep ... 查询sid

  7. 关于kali linux 2.0的vmware tools的安装问题

    在安装好kali linux 2.0 后,首先要做的就是添加源并更新系统,否则会出现软件定位问题. 在kali 2.0中,vmware tools已经不能使用了,官方放了一个工具下载安装就好. 添加源 ...

  8. ssh框架-Struts2(二)

    上篇文章我们了解了怎么配置struts.xml文件,以及前端控制器配置怎么配置,,Action进阶,Result结果配置,Struts2中的Servlet的API的访问,以及怎么获得请求参数.今天我们 ...

  9. Mego开发文档 - 处理并发冲突

    处理并发冲突 数据库并发是指多个进程或用户同时访问或更改数据库中的相同数据的情况.并发控制是指用于确保存在并发更改时数据一致性的特定机制. Mego实现了乐观并发控制,这意味着它可以让多个进程或用户独 ...

  10. 回收 PV - 每天5分钟玩转 Docker 容器技术(152)

    当 PV 不再需要时,可通过删除 PVC 回收. 当 PVC mypvc1 被删除后,我们发现 Kubernetes 启动了一个新 Pod recycler-for-mypv1,这个 Pod 的作用就 ...