索引 事务 函数
- 一、索引
- 二、事务
- 三、函数
一、索引
1.索引就是一个数据结构(b树),提高查询效率
2.索引类型:
- 普通索引
- 唯一索引
- 全文索引
- 聚合索引
3.索引优化
1.尽量避免在字段开头模糊查询,会导致数据库引擎放弃索引进行全盘扫描
2.尽量避免使用in 和not in,会导致引擎走全表扫描
3.尽量避免使用or,会导致数据库引擎放弃索引进行全盘扫描
4.尽量避免进行null值的判断,会导致数据库引擎放弃索引进行全盘扫描
5.尽量避免在where条件中等号的左侧进行表达式,函数操作,会导致数据库引擎放弃索引进行全盘扫描
6.当数据量大是,避免使用where 1=1的条件,通常为了方便拼装查询条件,我们会默认使用该条件,数据库引擎放弃索引进行全盘扫描
7.查询条件不能用< > 或者!=
8用联合索引的时候,注意遵循最333左匹配原则
9.隐式类型转换也会造成不使用索引
二、事务
事务的四大特征ACID:原子性,持久性,隔离性,一致性
三、函数
1.字符串
函数 | 功能 |
concat(s1,s2,…sn) | 字符串拼接,将 s1,s2 ,sn 拼接成一个字符串 |
lower(str) | 将字符串 全部转为小写 |
upper(str) | 将字符串 全部转为大写 |
lpad(str,n,pad) | 左填充,用字符串pad对 的左边进行填充,达到 个字符串长度 |
rpad(str,n,pad) | 右填充,用字符串pad对 的左边进行填充,达到 个字符串长度 |
trim(str) | 去掉字符串头部和尾部的空格 |
sbustring(str,start,len) | 返回从字符串 str从start位置起的len个长度 |
2.数值函数
函数 | 功能 |
ceil(x) | 向上取整 |
floor(x) | 向下取整 |
mod(x,y) | 返回 x/y的模 |
rand() | 返回 0~1内的随机数 |
round(x,y) | 求参数 的四舍五入的值,保留 位小数 |
3.日期函数
函数 | 功能 |
curdate() | 返回当前日期 |
curtime() | 返回当前时间 |
now() | 返回当前日期和时间 |
year(date) | 获取指定 date的年份 |
month(date) | 获取指定 date的月份 |
day(date) | 获取指定 date的日期 |
date_add(date,interval expr type) | 返回一个日期 时间值加上一个时间间隔 |
datediff(date1,date2) | 返回时间date1和时间date2之间的天数3 |