count(1)、count(*)、count(列名)的区别

在平时开发,或者写sql过程中,没怎么注意过count(1)、count(*)、count(列名)的区别,本文,将结束一下这三者的区别。

大厂都是怎么调优的?

转载与大厂都是怎么SQL调优的? – 敖丙

项目实践之MySQL创建存储过程

问题来源歌曲表: 歌手表: 起初,我将歌手表和歌曲表分离,并没有在歌曲表中存储歌手的名字,需要利用歌曲表中的singer_id在歌曲表中进行连接查询才能获得歌手的姓名。 但是,后面发现连接查询的效率过低,因此选择将歌手的名字singer_name 冗余在歌曲表中,提升查询效率。 解决方案方案一 修改歌曲表,添加singer_name字段 清空数据库,修改实体类,修改爬虫,直接将歌手名...

MySQL之主从复制与读写分离

MySQL主从复制是其最重要的功能之一。主从复制是指一台服务器充当主数据库服务器,另一台或多台服务器充当从数据库服务器,主服务器中的数据自动复制到从服务器之中。对于多级复制,数据库服务器即可充当主机,也可充当从机。MySQL主从复制的基础是主服务器对数据库修改记录二进制日志,从服务器通过主服务器的二进制日志自动执行更新。

MySQL长连接、短连接、连接池

什么是短连接?短连接是指程序和数据库通信时需要建立连接,执行操作后,连接关闭。短连接简单来说就是每一次操作数据库,都要打开和关闭数据库连接,基本步骤是:连接 →数据传输 →关闭连接。 什么是长连接?长连接是指程序之间的连接在建立之后,就一直打开,被后续程序重用。使用长连接的初衷是减少连接的开销,尽管MySQL的连接比其他数据库要快得多。 以PHP程序为例,当收到一个永久连接的请求时,PH...

MySQL一些规范以及优化问题

如何选择索引列的顺序?建立索引的目的是:希望通过索引进行数据查找,减少随机 IO,增加查询性能 ,索引能过滤出越少的数据,则从磁盘中读入的数据也就越少。 区分度最高的放在联合索引的最左侧(区分度=列中不同值的数量/列的总行数) 尽量把字段长度小的列放在联合索引的最左侧(因为字段长度越小,一页能存储的数据量越大,IO 性能也就越好) 使用最频繁的列放到联合索引的左侧(这样可以比较少的建...

Redis 对比 MySQL,为什么 redis 是快的?

1.Redis是基于内存存储的,MySQL是基于磁盘存储的 2.Redis存储的是k-v格式的数据。时间复杂度是O(1),常数阶,而MySQL引擎的底层实现是B+Tree,时间复杂度是O(logn),对数阶。Redis会比MySQL快一点点。 3.MySQL数据存储是存储在表中,查找数据时要先对表进行全局扫描或者根据索引查找,这涉及到磁盘的查找,磁盘查找如果是按条点查找可能会快点,但是...
NoSQL

MySQL索引类型

MySQL索引类型介绍

MySQL中SQL是如何执行的?

简单分析sql的执行过程…

MySQL什么时候适合建索引,什么时候不适合建索引?

1、什么是索引(本质:数据结构)索引是帮助MySQL高效获取数据的数据结构。 2、优势 提高数据检索的效率,降低数据库IO成本 通过索引对数据进行排序,降低数据排序的成本,降低了CPU的消耗 3、劣势  降低更新表的速度,如对表进行update 、delete、insert等操作时,MySQL不仅要保存数据,还要保存一下索引文件每次添加了索引列的字段,都会调整因为更新带来的键值变化...