1. 字符函数

  • length(获取字节数,UTF-8编码中 一个汉字占3个字节,GBK编码中一个汉字占2个字节)
select length('abc');
#结果:3 select length('张三');
#结果:6
  • concat(拼接字符串)
select concat('a', 'b', 'c');
#结果:abc
  • concat_ws(从二个参数开始拼接字符串,中间以第一个字符隔开)
select concat_ws(',','a', 'b', 'c');
#结果:a,b,c
  • upper(转换字母为大写)
select upper('aBc');
#结果:ABC
  • lower(转换字母为小写)
select lower('AbC');
#结果:abc
  • substr / substring(截取字符串)
select substr('abcd', 2);
#结果:bcd select substr('abcd', 2, 1);
#结果:b select substring('abcd', 2);
#结果:bcd select substring('abcd', 2, 1);
#结果:b
  • instr(返回子串索引位置,从1开始,没有返回0)
select instr('abcd', 'bc');
#结果:2 select instr('abcd', 'e');
#结果:0
  • trim(去除首尾子串,默认去除首尾空格)
select trim(' abc ');
#结果:abc select trim('d' from 'dabcd');
#结果:abc
  • ltrim(去除左侧空格)
select ltrim(' abc ');
#结果:abc
  • rtrim(去除右侧空格)
select rtrim(' abc ');
#结果: abc
  • left(从左边开始第n个字符)
select left('abc', 1);
#结果:a
  • right(从右边开始第n个字符)
select right('abc', 2);
#结果:bc
  • lpad(左侧补充指定长度字符)
select lpad('abc', '5', '-');
#结果:--abc
  • rpad(右侧补充指定长度字符)
select rpad('abc', '5', '-');
#结果:abc--
  • replace(替换字符串)
select replace('abc', 'b', '-');
#结果:a-c
  • repeat(返回字符串s重复n次后的字符串)
select repeat('abc', 2);
#结果:abcabc
  • strcmp(比较字符串,相同返回0,左侧大返回1,右侧大返回-1)
select strcmp('abc', 'abc');
#结果:0 select strcmp('abcd', 'abc');
#结果:1 select strcmp('abc', 'abcd');
#结果:-1
  • reverse(反转)
select reverse('abc');
#结果:cba
  • locate(返回子串在字符串中的其实位置,从1开始)
select locate('bc', 'abcdef');
#结果:2

2. 数学函数

  • abs(取绝对值)
select abs(-1);
#结果:1
  • round(四舍五入,负数时对绝对值四舍五入后加负号)
select round(1.2);
#结果:1 select round(-1.2);
#结果:-1 select round(1.6);
#结果:2 select round(-1.6);
#结果:-2 select round(3.1415926, 2);
#结果:3.14 select round(1234.5678, -2);
#结果:1200
  • ceil(向上取整)
select ceil(1.2);
#结果:2 select ceil(-1.2);
#结果:-1
  • floor(向下取整)
select floor(1.2);
#结果:1 select floor(-1.2);
#结果:-2
  • rand(随机数,0~1之间)
select rand();
#结果:0.3811951860610351 select ceil(rand() * 90 + 10);
#结果:27 select ceil(rand() * 900 + 100);
#结果:985
  • pi(查询圆周率,默认返回小数点后6位)
select pi();
#结果:3.141593
  • truncate(截取小数点后位数)
select truncate('3.1415926', 2);
#结果:3.14
  • mod(取余)
select mod(10, 3);
#结果:1 select mod(-10, 3);
#结果:-1
  • pow / power(求次方)
select pow(2, 3);
#结果:8 select power(2, 3);
#结果:8
  • greatest(返回集合中最大值)
select greatest(6, 5, 2, 9, 1);
#结果:9
  • least(返回集合中最小值)
select least(6, 5, 2, 9, 1);
#结果:1

3. 日期函数

  • now(当前系统日期时间)
select now();
#结果:2020-07-08 19:41:08
  • curdate(当前系统日期,不包含时间)
select curdate();
#结果:2020-07-08
  • curtime(当前系统时间,不包含日期)
select curtime();
#结果:19:42:15
  • year / month / day / hour / minute / second(返回当前日期时间指定部分)
select year(now());
#结果:2020 select month(now());
#结果:7 select day(now());
#结果:8 select hour(now());
#结果:19 select minute(now());
#结果:43 select second(now());
#结果:23
  • str_to_date(字符串转日期)
select str_to_date('07/08 2020', '%c/%d %Y');
#结果:2020-07-08
  • date_format(日期转字符串)
select date_format('2020-07-08', '%Y年%m月%d日');
#结果:2020年07月08日
  • datediff(计算日期只差,单位天)
select datediff('2020-07-08', '2020-05-08');
#结果:61
  • date_add(日期增加)
select date_add('2020-07-08 23:59:59', interval 1 second);
#结果:2020-07-09 00:00:00 select date_add('2020-07-08 23:59:59', interval 1 day);
#结果:2020-07-09 23:59:59
  • date_sub(日期相减)
select date_sub('2020-07-08 23:59:59', interval 1 second);
#结果:2020-07-08 23:59:58 select date_sub('2020-07-08 23:59:59', interval 1 day);
#结果:2020-07-07 23:59:59

4. 条件函数

  • if(判断,类似于三目表达式)
select if(2 > 1, 'yes', 'no');
#结果:yes
  • ifnull(判断是否为null,否则返回第二个字符)
select ifnull('abc', 'is null');
#结果:abc select ifnull(null, 'is null');
#结果:is null
  • case(多条件判断)
select
case
when 1 < 2 then
'lt'
when 1 > 2 then
'gt'
else
'eq'
end
#结果:lt

5. 其他函数

  • version(查询数据库版本)
select version();
#结果:8.0.20
  • database(查询当前数据库名称)
select database();
#结果:testdb
  • database(查询当前数据库用户)
select user();
#结果:root@127.0.0.1
  • connection_id(查询连接数)
select connection_id();
#结果:1173
  • charset(查询字符集)
select charset('abc');
#结果:utf8
  • conv(返回数字n为f1进制时的f2进制数)
select conv(15, 10, 2);
#结果:1111 select conv(1111, 2, 8);
#结果:17

Mysql常用函数合集的更多相关文章

  1. mysql常用函数参考

    mysql常用函数参考   对于针对字符串位置的操作,第一个位置被标记为1. ASCII(str) 返回字符串str的最左面字符的ASCII代码值.如果str是空字符串,返回0.如果str是NULL, ...

  2. es6常用基础合集

    es6常用基础合集 在实际开发中,ES6已经非常普及了.掌握ES6的知识变成了一种必须.尽管我们在使用时仍然需要经过babel编译. ES6彻底改变了前端的编码风格,可以说对于前端的影响非常巨大.值得 ...

  3. 第十章 MySQL 常用函数

    第十章 MySQL 常用函数 第一节:日期和时间函数 1,CURDATE() 返回当前日期:2,CURTIME() 返回当前时间:3,MONTH(d) 返回日期 d 中的月份值,范围是 1~12 第二 ...

  4. 【数据库】MySql常用函数梳理

    转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/5866388.html MySql常用函数梳理: 1:数学函数 使用格式:一般用于插入.修改语句中,直接 函数( ...

  5. 【转】Ubuntu常用软件合集

    [转]Ubuntu常用软件合集 Ubuntu常用软件合集 我用的使Ubuntu-Kylin14.04,原因呢主要是觉得使本土化的,自带了日历.输入法.优客助手等易于上手的应用.也省的每次安装完原生的系 ...

  6. 学生选课数据库SQL语句45道练习题整理及mysql常用函数(20161019)

    学生选课数据库SQL语句45道练习题: 一.            设有一数据库,包括四个表:学生表(Student).课程表(Course).成绩表(Score)以及教师信息表(Teacher).四 ...

  7. MySQL常用函数介绍

    MySQL常用函数介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.操作符介绍 1>.操作符优先级 mysql; +----------+ | +----------+ ...

  8. MySql常用函数大全

    MySql常用函数大全 MySQL数据库中提供了很丰富的函数.MySQL函数包括数学函数.字符串函数.日期和时间函数.条件判断函数.系统信息函数.加密函数.格式化函数等.通过这些函数,可以简化用户的操 ...

  9. Linux常用命令合集

    常用命令合集 命令选项和参数 Linux中的命令格式为:command [options] [arguments]  //中括号表示可选的,即有些命令不需要选项也不需要参数,但有的命令在运行时需要多个 ...

随机推荐

  1. Android10_原理机制系列_AMS之AMS的启动

    概述 该篇基于AndroidQ,主要介绍系统启动中的 AMS(ActivityManagerService)的启动过程. AMS对四大组件(AndroidQ将activity移到了ActivityTa ...

  2. Web安全常见漏洞修复建议

    转载地址:https://security.pingan.com/blog/17.html SQL注入 在服务器端要对所有的输入数据验证有效性. 在处理输入之前,验证所有客户端提供的数据,包括所有的参 ...

  3. 掌握Python可以去哪些岗位?薪资如何?

    一.人工智能 Python作为人工智能的黄金语言,选择人工智能作为就业方向是理所当然的,就业前景也还不错.人工智能工程师的招聘起薪一般在20K-35K,如果是初级工程师,起薪一般12K. 二.大数据 ...

  4. 关于Java多线程看这一篇就够了,从创建线程到线程池分析的明明白白

    前言 进程是指一个内存中运行的应用程序,每个进程都有自己独立的一块内存空间,即进程空间或(虚空间).进程不依赖于线程而独立存在,一个进程中可以启动多个线程. 线程是指进程中的一个执行流程,一个进程中可 ...

  5. CorelDRAW 条形码改不了字体如何解决?

    看到有朋友提问说CorelDRAW条码生成设置里面的字体不能更改,是灰色的,不能选择.这个默认字体怎么改? 出现问题:条码生成设置里面的字体不能更改,是灰色的,不能选择. 解决方法一:找到C盘字体文件 ...

  6. 推荐一款比迅雷下载速度快的mac下载器

    Folx和迅雷是2款支持在Mac系统上进行文件资源下载的工具,两者都支持BT种子资源的下载和直链下载,但Folx还另外支持了下载计划的自定义和智能限速功能.本文主要是为了比较Folx和迅雷在下载同一资 ...

  7. 对于MySQL数据库四种隔离等级

    对于MySQL事务有四种隔离级别,分别是以下四种: 1.读未提交 2.读提交 3.可重复读 4.串行化(加锁) 对于隔离我们都是说在并发的情况下发生的事情,读取的数据在并发的情况下会发生什么情况. 并 ...

  8. C语言讲义——数组

    数组是: 一组数据 一组类型相同的数据 在计算机底层,数组是一块连续的内存 为什么使用数组? 一年12个月 int m1=1, m2=2, m3=3, ... 麻烦 数组示例: #include &l ...

  9. redis 一致性分析

    转载: https://blog.csdn.net/qq32933432/article/details/108690254

  10. CPU实现原子操作的原理

    586之前的CPU, 会通过LOCK锁总线的形式来实现原子操作. 686开始则提供了存储一致性(Cache coherence),  这是多处理的基础, 也是原子操作的基础. 1. 存储的粒度 存储的 ...