- upper(str),ucase(str)将字母改为大写
- lower(str),lcase(str)将字母改为小写
- left(str,length)返回 str 字符串的前 length 个字符
- right(str,length)返回 str 字符串的后 length 个字符
- substring(str,index,length)返回 str 字符串从 index 位开始长度为 length 个字符(index 从 1 开始)
- reverse(str)将 str 字符串倒序输出
- curdate()、current_date( ) 获取当前日期
- curtime()、current_time( ) 获取当前日期
- now()获取当前日期和时间
- datediff(d1、d2)d1 和 d2 之间的天数差
- adddate(date,num)返回 date 日期开始,之后 num 天的日期
- subdate(date,num)返回 date 日期开始,之前 num 天的日期
- Count(字段)根据某个字段统计总记录数(当前数据库保存到多少条数据)
- sum(字段)计算某个字段的数值总和
- avg(字段)计算某个字段的数值的平均值
- Max(字段)、min(字段)求某个字段最大或最小值
表级锁:开销小,加锁快,不会出现死锁 。锁定粒度大,发生锁冲突的概率最高,并 发量最低 。
行级锁:开销大,加锁慢,会出现死锁 。锁力度小,发生锁冲突的概率小,并发度最 高 。
15. MySQL 数据优化 。
- 优化数据类型
- 避免使用 NULL,NULL 需要特殊处理, 大多数时候应该使用 NOT NULL,或者使用一个特殊的值,如 0,-1 作为默认值 。
- 仅可能使用更小的字段,MySQL 从磁盘读取数据后是存储到内存中 的,然后使用 cpu 周期和磁盘 I/O 读取它,这意味着越小的数据类 型占用的空间越小.
- 小心字符集转换
- 客户端或应用程序使用的字符集可能和表本身的字符集不一样,这需要 MySQL 在运行过程中隐含地进行转换,此外,要确定字符集如 UTF8 是否支持多字节字符,因此它们需要更多的存储空间 。
- _优化 count(mycol) 和 count()*
- 优化子查询
- 遇到子查询时,MySQL 查询优化引擎并不是总是最有效的,这就是为 什么经常将子查询转换为连接查询的原因了,优化器已经能够正确处理 连接查询了,当然要注意的一点是,确保连接表 (第二个表) 的连接列 是有索引的,在第一个表上 MySQL 通常会相对于第二个表的查询子 集进行一次全表扫描,这是嵌套循环算法的一部分 。
- 优化 UNION
- 在跨多个不同的数据库时使用 UNION 是一个有趣的优化方法,UNION 从两个互不关联的表中返回数据,这就意味着不会出现重复的 行,同时也必须对数据进行排序,我们知道排序是非常耗费资源的,特 别是对大表的排序 。
- UNION ALL 可以大大加快速度,如果你已经知道你的数据不会包括重 复行,或者你不在乎是否会出现重复的行,在这两种情况下使用 UNION ALL 更适合 。此外,还可以在应用程序逻辑中采用某些方法避 免出现重复的行,这样 UNION ALL 和 UNION 返回的结果都是一样 的,但 UNION ALL 不会进行排序 。
【MySQL从入门到进阶,看这一篇文章就够了】
推荐阅读
- 系统管理员入门:排除故障
- 从中医角度谈普洱茶的好处
- 梦见看见死人遗体从身也给穿白衣服的人抬过是什么意思 梦见看见死人遗体还护送她回家
- 合伙,合的不是钱,而是规则
- 女人的神奇美容院,普洱茶
- 从阿里、头条面试回来,面试官最喜欢问的Jvm和Redis你了解多少?
- 成为紫砂大神 你能行不可不学的入门秘籍
- 从洗澡看他如何对待感情
- 从明青花瓷缠枝花卉纹茶碗看景德镇辉煌
- 挑战曲屏难题!拆机修复华为mate20pro全过程