第六章 运算符和函数

概述

  1. 字符函数
  2. 数值运算符与函数
  3. 比较运算与函数
  4. 日期时间函数
  5. 信息函数
  6. 聚合函数
  7. 加密函数

一、字符函数

函数名称 描述
CONCAT() 字符连接
CONCAT_WS() 使用指定的分隔符进行字符连接
FORMAT() 数字格式化
LOWER() 转换成小写字母
UPPER() 转换成大写字母
LEFT() 获取左侧字符
RIGHT() 获取右侧字符
LENGTH() 获取字符串长度
LTRIM() 删除前导空格
RTRIM() 删除后续空格
TRIM() 删除前导和后续空格
SUBSTRING() 字符串截取
[NOT] LIKE 模式匹配
REPLACE() 字符串替换

example:

SELECT CONCAT('IMOOC', 'MYSQL');            --IMOOCMYSQL
SELECT CONCAT_WS('·', 'IMOOC', 'MYSQL');    --IMOOC·MYSQL
SELECT FORMAT(12560.7455,2);                --12,560.75
SELECT LOWER('MySql');                      --mysql
SELECT UPPER('MySql');                      --MYSQL
SELECT LEFT('MySQL', 2);                    --My
SELECT RIGHT('MySQL', 2);                   --QL
SELECT LENGTH('MySQL');                     --5
SELECT LTRIM('  MySQL   ');                 --MySQL
SELECT RTRIM('  MySQL   ');                 --   MySQL
SELECT TRIM('  MySQL   ');                  --MySQL
SELECT TRIM(LEADING '?' FROM '??MySQL???'); --MySQL???
SELECT TRIM(TRAILING '?' FROM '??MySQL???');--??MySQL
SELECT TRIM(BOTH '?' FROM '??MySQL???');    --MySQL
SELECT REPLACE('??My??SQL???','?','');      --MySQL
SELECT SUBSTRING('MySQL', 2, 2);            --yS
SELECT SUBSTRING('MySQL', 2);               --ySQL  
SELECT SUBSTRING('MySQL', -2);              --QL
SELECT SUBSTRING('MySQL', -3, 2);           --SQ
SELECT 'MySQL' LIKE 'M%';                   --1
SELECT 'My%SQL' LIKE '%1%%' ESCAPE '1';     --1
/*
%代表任意字符 _代表任意一个字符
*/

二、数值运算符与函数

名称 描述
CEIL() 进一取整
DIV 整数除法
FLOOR() 舍一取整
MOD 取余数(模)
POWER() 幂运算
ROUND 四舍五入
TRUNCATE() 数字截取

example:

SELECT CEIL(3.01);          --4
SELECT FLOOR(3.99);         --3
SELECT 3 DIV 4;             --0
SELECT 5 MOD 3;             --2
SELECT POWER(3, 3);         --27
SELECT ROUND(3.652, 2);     --3.65
SELECT TRUNCATE(125.89, 1); --125.8

三、比较运算符与函数

名称 描述
[NOT]BETWEEN...AND... [不]在范围之内
[NOT]IN() [不]在列出值范围内
IS[NOT] NULL [不]为空

example:

SELECT 15 BETWEEN 1 AND 22;      --1
SELECT 35 BETWEEN 1 AND 22;      --0
SELECT 35 NOT BETWEEN 1 AND 22;  --1
SELECT 10 IN (5, 10, 15, 20);    --1
SELECT 13 IN (5, 10, 15, 20);    --0
SELECT NULL IS NULL;             --1
SELECT '' IS NULL;               --0
SELECT 0 IS NULL;                --0

四、日期时间函数

名称 描述
NOW() 当前日期和时间
CURDATE() 当前日期
CURTIME() 当前时间
DATE_ADD() 日期变化
DATEDIFF() 日期差值
DATE_FORMAT() 日期格式化

example:

SELECT NOW();                                     --2018-04-25 17:10:12
SELECT CURDATE();                                 --2018-04-25
SELECT CURTIME();                                 --17:10:12
SELECT DATE_ADD('2014-3-12', INTERVAL 365 DAY);   --2015-03-12
SELECT DATE_ADD('2014-3-12', INTERVAL -365 DAY);  --2013-03-12
SELECT DATE_ADD('2014-3-12', INTERVAL 5 WEEK);    --2014-04-16
SELECT DATEDIFF('2013-3-12', '2014-3-12');        --365
SELECT DATE_FORMAT('2014-3-12','%m/%d/%Y');       --03/12/2014

五、信息函数

名称 描述
CONNECTION_ID() 连接ID
DATABASE() 当前数据库
LAST_INSERT_ID() 最后插入记录ID号
USER() 当前用户
VERSION() 版本信息

example:

SELECT CONNECTION_ID();   --3
SELECT DATABASE();        --imooc
SELECT LAST_INSERT_ID();  --0
SELECT USER();            --root@localhost
SELECT VERSION();         --5.7.17-log

六、MySQL聚合函数

名称 描述
AVG() 平均值
COUNT() 计数
MAX() 最大值
MIN() 最小值
SUM() 求和

example:

SELECT ROUND(AVG(goods_price), 2) AS avg_price FROM tdb_goods;
/*Result
+-----------+
| avg_price |
+-----------+
|   5654.81 |
+-----------+
*/
SELECT COUNT(goods_id) AS counts FROM tdb_goods;
/*Result
+--------+
| counts |
+--------+
|     21 |
+--------+
*/
SELECT MAX(goods_price) FROM tdb_goods;
/*Result
+------------------+
| MAX(goods_price) |
+------------------+
|        28888.000 |
+------------------+
*/
SELECT MAX(goods_price) FROM tdb_goods;
/*Result
+------------------+
| MIN(goods_price) |
+------------------+
|           99.000 |
+------------------+
*/
SELECT SUM(goods_price) FROM tdb_goods;
/*Result
+------------------+
| SUM(goods_price) |
+------------------+
|       118751.000 |
+------------------+
*/

七、加密函数

名称 描述
MD5() 信息摘要算法
PASSWORD() 密码算法

example:

SELECT MD5('admin');
/*Result
+----------------------------------+
| MD5('admin')                     |
+----------------------------------+
| 21232f297a57a5a743894a0e4a801fc3 |
+----------------------------------+
*/
SELECT PASSWORD('admin');
/*Result
+-------------------------------------------+
| PASSWORD('admin')                         |
+-------------------------------------------+
| *4ACFE3202A5FF5CF467898FC58AAB1D615029441 |
+-------------------------------------------+
*/

修改密码

SET PASSWORD = PASSWORD('root');

你可能感兴趣的:(第六章 运算符和函数)