文章目录

  • 运算符
  • 数值函数
  • 字符函数
  • 日期时间函数
  • 聚合函数
  • 信息函数
  • 加密函数

运算符

运算符概述

  • 运算符是告诉MySQL执行特定算法或逻辑操作的符号,运算符连接表达式中各个操作数,其作用是用来指明对操作数所进行的运算

算数运算符

  • 算术运算符用于各类数值运算
运算符 作用
+ 加法
- 减法
* 乘法
/ 除法
% 取余(取模)

比较运算符

运算符 作用
>、< 大于、小于
>=、<= 大于等于、小于等于
= 等于
<>(!=) 不等于
IS (NOT) NULL 判断一个值是否为空(或不为空)
BETWEEN … AND 判断一个值是否在两个值之间
(NOT) IN 判断一个值(或不是)IN列表中的值
LIKE 与通配符匹配使用

逻辑运算符

运算符 作用
AND 逻辑与
OR 逻辑或
NOT 逻辑非

数值函数

函数

  • 函数表示对输入参数值返回一个具有特定关系的值,MySQL提供了大量丰富的函数,在进行数据库管理以及数据库的查询和操作时将会经常用到各种函数。通过对数据的处理,数据库功能可以变得更加强大,更加灵活的满足不同用户的需求

数值函数

  • 数值函数(数学函数):主要是用来处理数值数据的

    获取整数的函数

  • CEIL(x) : 返回大于x的最小整数值

  • 例:SELECT CEIL(28.55);
    结果:29
    
  • FLOOR(x) : 返回小于x的最大整数值

  •  例:SELECT FLOOR(28.55);结果:28
    

    四舍五入的函数

  • ROUND(x) : 返回最接近于参数x的整数,对参数x进行四舍五入

  • 例:SELECT ROUND(28.55);
    结果:29
    
  • ROUND(x, y) : 返回最接近于参数x的数,其值保留到小数点后面的y位,若为负值,则将保留到小数点左边y位前的值

  • 例:SELECT ROUND(28.55, 1), ROUND(28.55, 0), ROUND(28.55, -1);
    结果:28.6          29          30
    

    截断函数

  • TRUNCATE(x, y) : 返回被舍去至小数点后y位的数字x。若y的值为0,则结果为整数,若y的值为负数,则截去x小数点左边第y位开始后面所有低位的值

  • 例:SELECT TRUNCATE(28.55, 1), TRUNCATE(28.55, 0), TRUNCATE(28.55, -1);
    结果:28.5          28          20
    

    取模

  • MOD(x, y) : 返回x被y除后的余数

  • 例:SELECT MOD(11, 2);
    结果:1
    

字符函数

  • 字符函数主要用来处理数据库中的字符串数据

字符串连接函数

  • CONCAT(S1, S2, ,) : 返回结果为连接参数产生的字符串,如果任何一个参数为NULL,则返回值为NULL。
  • 例:SELECT CONCAT("hello", "world");
    结果:helloworld
    
  • CONCAT_WS(X, S1, S2) : 第一个参数X是其他参数的分割符,分隔符的位置放在要连接的两个字符串之间,分隔符可以是一个字符串,也可以是其他参数,如果分隔符为NULL,则结果为NULL

  • 例:SELECT CONCAT_WS("-", "hello", "world");
    结果:hello-world
    

字母转换大小写函数

  • LOWER(str) :可以将字符串str中的字母字符全部转换成小写字母

  • 例:SELECT LOWER("Hello World");
    结果:hello world
    
  • UPPER(str) :可以将字符串str中的字母字符全部转换成大写字母

  • 例:SELECT UPPER("Hello World");
    结果:HELLO WORLD
    

求字符串长度的函数

  • LENGTH(str) : 返回值为字符串的字节长度
  • 例:SELECT LENGTH(" hello ");  //左右有空格
    结果:7
    

删除空格的函数

  • LTRIM(str) : 返回字符串s, 字符左侧空格字符被删除

  • 例:SELECT LTRIM(" hello "), LENGTH(LTRIM(" hello "));
    结果:hello         6
    
  • RTRIM(str):返回字符串s,字符左侧空格字符被删除

  • 例:SELECT RTRIM(" hello "), LENGTH(RTRIM(" hello "));
    结果:hello         6
    
  • TRIM(str) : 删除字符串两侧的空格

  • 例:SELECT TRIM(" hello "),LENGTH(TRIM(" hello "));
    结果:hello         5
    

截去字符串

  • SUBSTRING(str, n, len) : 带有len参数的格式,从字符串str返回一个长度同len字符相同的子字符串,起始于位置n, n 如果是负数,则子字符串的位置起始于字符串结尾的n个字符

  • 例:SELECT SUBSTRING("hello world", 1, 5);
    结果:hello
    SELECT SUBSTRING("hello world", -3, 2);
    结果:rl
    

获取指定长度的字符串

  • LEFT(str, n) : 返回字符串s开始的最左边n个字符

  • 例:SELECT LEFT("hello mysql", 5);
    结果:hello
    
  • RIGHT(str, n) : 返回字符串中最右边n个字符

  • 例:SELECT RIGHT("hello mysql", 5);
    结果:mysql
    

替换函数

  • REPLACE(str, from_str, to_str) : 在字符串str中所有出现的字符串from_str均被to_str替换,然后返回这个字符串
  • 例:SELECT REPLACE("hello world", "world", "mysql" );
    结果:hello mysql
    

格式化函数

  • FORMAT(x, n):将数字x格式化,并以四舍五入的方式保留小数点后n位,结果以字符串的形式返回,若n为0,则返回结果不含小数部分
  • 例:SELECT FORMAT(1234.5678, 2), FORMAT(1234.5, 2), FORMAT(1234.5678, 0);
    结果:1234.57           1234.50         1235
    

日期时间函数

  • 日期和时间函数主要用来处理日期和时间值

获取当前日期的函数

  • CURDATE()CURRENT_DATE() 函数作用相同,将当前日期按照"YYYY-MM-DD"或"YYYYMMDD"格式的值返回,具体格式根据函数在字符串或是数字语境中而定
  • 例:SELECT CURDATE();
    结果:2018-10-02
    SELECT CURDATE()+0;
    结果:20181002
    

获取当前时间的函数

  • CURTIME()CURRENT_TIME() 函数作用相同,将当前时间以"HH:MM:SS"或HHMMSS的格式返回,具体格式根据函数在字符串或是数字语境中而定
  • 例:SELECT CURTIME();
    结果:15:39:02
    SELECT CURTIME()+0;
    结果:153902
    

获取当前日期和时间

  • NOW()SYSDATE() :两个函数的作用相同,均返回当前的日期时间值。格式为"YYYY-MM-DD HH:MM:SS"或 YYYYMMDDHHMMSS。具体格式根据函数在字符串或数字语境中而定
  • 例:SELECT NOW();
    结果:2018-10-02 15:43:35
    

执行日期的加运算

  • DATE_ADD(date, INTERVAL expr type) :其中,date是一个DATETIME或DATE值,用来指定起始时间。expr是一个表达式,用来指定从起始日期添加或减去的时间间隔值。type为关键词,它指示了表达式被解释的方式,如:YEAR, MONTH, DAY, WEEK, HOUR等。
  • 例:SELECT DATE_ADD("2018-10-02", INTERVAL 5 MONTH);
    结果:2019-03-02
    

计算两个日期之间的间隔天数

  • DATEDIFF(date1, date2):返回起始时间date1和结束时间date2之间的天数
  • 例:SELECT DATEDIFF("2018-10-02", "2018-05-01");
    结果:154
    

日期格式化

  • DATE_FORMAT(date, format):根据format指定的格式显示date值
  • DATE_FORMAT时间日期格式:
  • %b:月份的缩写名称(Jan…Dec)
  • %c:月份,数字形式(0。。。12)
  • %m:月份,数字形式(00。。。12)
  • %M:月份日期(January … December)
  • %d:该月日期,数字形式(00。。。31)
  • %e:该月日期,数字形式(0。。。31)
  • %Y:4位数形式表示年份
  • %y:2位数形式表示年份
  • 例:SELECT DATE_FORMAT("2018-10-02", "%Y%M%d");
    结果:2018October02
    

聚合函数

  • 有时候并不需要返回实际表中的数据,而只是对获取的数据进行分析和总结。这时候需要使用聚合函数
名称 描述
AVG() 返回某列的平均值
COUNT() 返回某列的行数
MAX() 返回某列的最大值
MIN() 返回某列的最小值
SUM() 返回某列值的和

信息函数

系统信息函数

函数 描述
VERSION() 返回当前MySQL服务器版本的版本号
CONNECTION_ID() 返回MySQL服务器当前连接的次数,每个连接都有各自唯一的ID
DATABASE()和SCHEMA() 返回当前的数据库名
USER() 获取用户名的函数
返回当前登录的用户名称

加密函数

  • 加密函数主要用来对数据进行加密和界面处理,以保证某些重要数据不被别人获取

  • MD5() : 信息摘要算法

  • MD5(str)函数可以加密字符串,加密后的值以32位十六进制数字的二进制字符串形式返回,若参数为NULL,则返回NULL

MySQL_运算符与函数相关推荐

  1. 在python中定义类时、运算符重载_自定义 Python 类中的运算符和函数重载(上)...

    如果你对 Python 中的str对象使用过 + 或 * 运算符,你一定注意到了它的操作与 int 或 float 类型的区别: 你可能想知道同一内置运算符或函数如何对不同类对象进行不同操作的.这分别 ...

  2. C++:运算符重载函数之成员运算符重载函数

    5.2.3 成员运算符重载函数 在C++中可以把运算符重载函数定义为某个类的成员函数,称之为成员运算符重载函数. 1. 定义成员运算符重载函数的语法形式 (1)在类的内部,定义成员运算符重载函数的格式 ...

  3. MYSQL数值运算符和函数用法

    mysql也有数值运算,那么列出常见的函数 ceil() div() floor() mod() power() round() truncate()等等,具体说说MYSQL数值运算符和函数用法. 1 ...

  4. MYSQL——常用运算符和函数

    MYSQL的常用运算符 1   字符函数 CONCAT()    字符连接 CONCAT_WS()   使用指定的分隔符进行字符连接 FORMAT()   数字格式化 LOWER()    转换成小写 ...

  5. 10.2 运算符重载函数作为类成员函数和友元函数

    Complex operator+(Complex &c2) { Complex c; c.real=real+c2.real; c.imag=imag+c2.imag; return c; ...

  6. MySQL之运算符和函数

    MySQL中的函数主要有一下几类: 字符函数:数值运算符和函数:比较运算符和函数:日期时间函数:信息函数:聚合函数:加密函数 1.字符函数 1.CONCAT() root@localhost test ...

  7. MySQL运算符,函数,索引,图形化管理工具

    文章目录 运算符 算术运算符 比较运算符 逻辑运算符 MySQL运算符 数字函数 字符串函数 日期时间函数 条件函数 系统信息函数 加密函数 其他常用函数 MySQL索引 索引的概念 索引的分类 创建 ...

  8. C++运算符重载函数作为类成员函数和友元函数

    C++运算符重载函数作为类成员函数 1.1成员函数的重载运算符左侧是一个类对象,而且与运算符函数类型相同. 因为必须通过类的对象去调用该类的成员函数,而且只有运算符重载函数和返回值类型相同,运算结果才 ...

  9. java:去除字符串中空格 、 oracle (+) 、 mysql中数值运算符和函数

    java:去除字符串中空格 http://www.cnblogs.com/LiuChunfu/p/5661810.html oracle:oracle (+) https://zhidao.baidu ...

最新文章

  1. python亲和性分析法推荐电影论文_数据挖掘-MovieLens数据集_电影推荐_亲和性分析_Aprioro算法...
  2. Tomcat【环境搭建 01】安装包版本说明+安装+参数配置+启动(JDK11+最新版apache-tomcat-10.0.12)
  3. PHP中的foreach遍历数组
  4. 怎样设计一个良好大数据处理的解决方案?
  5. java 回滚异常_Spring事务管理只对出现运行期异常进行回滚
  6. 当使用easyui时,表单的onchange事件失效
  7. SCN风波又起,2019年6月之前Oracle必须升级吗?
  8. 并发编程-基础概念介绍
  9. python3_实现BP神经网络 + BP神经网络应用实例
  10. 改造家里的开关为智能开关,保留原有开关控制,零火版,HomeKit篇(三)
  11. Android系统开启蓝牙源码分析(上)
  12. 19.React Native动画Animated效果三种动画类型二;
  13. Java8获取年、月、周数据和某一天的开始结束时间
  14. java fuoco2_音乐术语《piu mosso con fuoco》是什么意思
  15. C++ 文件读取read()write()
  16. [生成函数阶段性小结][CF891E]Lust
  17. 人脸表情识别 项目实战
  18. 综合布线系统---常见机柜尺寸
  19. centos7安装docker
  20. 戴尔计算机专业推荐笔记本电脑,戴尔笔记本电脑型号有哪些 戴尔笔记本电脑推荐【详解】...

热门文章

  1. 最详细的YOLO论文笔记
  2. Huawei LiteOS简介
  3. 渗透测试入门14之渗透测试工具1
  4. 计算机网络上机作业,204计算机网络上机大作业.docx
  5. -组件基础-局部组件 // 局部组件的简写
  6. MySQL笔记(五)索引 index
  7. EasyUI--权限管理(二)显示左侧菜单
  8. 医疗行业的售前工程师如何撰写人工智能案例申请材料
  9. xml转换为json格式时,如何将指定节点转换成数组 Json.NET
  10. Java虚拟机运行时栈帧结构--《深入理解Java虚拟机》学习笔记及个人理解(二)