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天后的日期

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中常用的sql函数_Mysql中的常用函数:相关推荐

  1. mysql 怎么查询慢sql语句_Mysql中 查询慢的 Sql语句的记录查找

    Mysql中 查询慢的 Sql语句的记录查找 慢查询日志 slow_query_log,是用来记录查询比较慢的sql语句,通过查询日志来查找哪条sql语句比较慢,这样可以对比较慢的sql可以进行优化. ...

  2. navicat导出数据到oracle,使用Navicat premium导出oracle数据库中数据到SQL server2008数据库中...

    使用Navicat premium导出oracle数据库中数据到SQL server2008数据库中 发布时间:2018-08-20 14:41, 浏览次数:471 , 标签: Navicat pre ...

  3. mysql的datepart函数_MySQL中的 DATE_FORMAT 与 SQL 中的 DATEPART()函数使用介绍

    本小白最近学习MySQL,因为之前是已经有学过微软大佬的SQL Server所以自认为理解的还是稍快的(滑鸡),好了说正事. 今天在写一个查询语句时,需要用到 一个日期函数:DATEPART( ) 因 ...

  4. mysqlsql常用函数_MySQL中的常用函数

    在MySQL中,函数不仅可以出现在select语句及其子句中,而且还可以出现在update.delete语句中. 常用的函数有: 1. 字符串函数:主要用于处理字符串. 2. 数值函数:主要用于处理数 ...

  5. mysql算法函数_mysql中的函数总结

    mysql中常用日期时间函数 MySQL服务器中的三种时区设置: ①系统时区---保存在系统变量system_time_zone ②服务器时区---保存在全局系统变量global.time_zone ...

  6. mysql空值判断函数_MySQL中的ifnull()函数判断空值

    我们知道,在不同的数据库引擎中,内置函数的实现.命名都是存在差异的,如果经常切换使用这几个数据库引擎的话,很容易会将这些函数弄混淆. 比如说判断空值的函数,在Oracle中是NVL()函数.NVL2( ...

  7. mysql中字符串拼接函数_MySQL 字符串连接CONCAT()函数

    MySQL字符串连接函数 使用方法: CONCAT(str1,str2,-) 返回结果为连接参数产生的字符串.如有任何一个参数为NULL ,则返回值为 NULL. 注意: 如果所有参数均为非二进制字符 ...

  8. mysql 导入数据库sql语句_mysql中导入数据与导出数据库sql语句

    本文章来详细介绍关于mysql中导入数据与导出数据库sql语句,在mysql中常用的导入与导出数据的命令有source与mysqldump大家可参考. 1.例1:连接到本机上的MYSQL 首先在打开D ...

  9. mysql不具有的特征是_MySQL中的SQL特征(转)

    MySQL中的SQL特征: 为了与MySQL服务器进行通信,必须熟练掌握SQL.例如,在使用诸如mysql客户机这样的程序时,其功能首先是作为一种发送SQL 语句给服务器执行的工具.而且,如果编写使用 ...

  10. mysql的concat函数_MySQL中concat函数(连接字符串)

    MySQL中concat函数 使用方法: CONCAT(str1,str2,-) 返回结果为连接参数产生的字符串.如有任何一个参数为NULL ,则返回值为 NULL. 注意: 如果所有参数均为非二进制 ...

最新文章

  1. 主机端实时获取Hololens2的RGBD数据流
  2. Nilearn教程系列(4)-脑部地图集绘制
  3. 如果已经知道某一CALL的具体作用,能否把后面所有相同的CALL都改成函数名形式?
  4. 小Z的袜子(hose)
  5. Dottrace跟踪代码执行时间
  6. 【直观详解】支持向量机SVM
  7. Spark:通过start-slaves.sh脚本启动worker报错:Permission denied
  8. visio 2013安装失败正在回滚
  9. 解决mysql connection ODBC安装系统代码126错误 VC2013安装
  10. 伽玛校正(Gamma Correction)
  11. 软件测试中的测试文档
  12. linux生成一个ssh密钥,ssh密钥生成方式
  13. python timepicker_Android DatePicker和TimePicker:时间日期选择器
  14. 国际长途电话区号(中英文名)
  15. Linux snapcraft vscode报错snap is unusable due to missing files解决方法
  16. 公安大数据应用之情报分析与关联挖掘
  17. 微信html代码怎么换行,微信小程序文本如何换行
  18. 百度智能云开物凭什么在“双跨”新增名单中排名榜首?
  19. 鸿蒙手游——数字华容道
  20. Opencv存图读图

热门文章

  1. oracle 服务器时间修改,oracle数据库服务器修改时间
  2. mysql 怎么反选_MySQL 范式与反范式的选择 | 剑花烟雨江南
  3. LC-799.香槟塔
  4. DataFrame分组排序
  5. 在线洗衣洗鞋系统,洗鞋店小程序
  6. 谈谈Spine动画在产品中的应用
  7. vue 微信分享功能
  8. Revit插件【机电模块】的常用功能有哪些?
  9. 【每日早报】2019/07/25
  10. Macbook键盘的使用基础技巧_我是亲民_新浪博客