MySQL系列(19): SELECT 查询语句优化

  MySQL 查询是以 SELECT 语句形式执行数据库中的所有查找操作,SELECT 操作在执行的 SQL 语句中占大比例,SELECT 调优可以说是对 SQL 优化的首要任务。

  查询调优除了应用于 SELECT 语句外,还适用于诸如 create table…as select、insert in to…select 和 delete 语句中的 where 子句等构造。这些语句还有额外的性能考虑,因为它们将写操作与面向读的操作结合在了一起。

阅读更多

MySQL系列(1):开篇前言

  初衷,做开发有些年,数据库这块大部分也是和 MySQL 打交道,有很多临时、零散、不成体系的笔记和日志,但极缺乏一个对MySQL全面的、系统的认知,所以写这系列文章,以期补上。

  本系列文章基于 MySQL 8.0 版本,也是市面和云平台用生产部署使用的较多的版本,也会涉及MariaDB相关特性。在写这篇文章之时,MySQL 8.0 已正式发布,是个大版本,有较大的改动和优化,基于新版本稳定性问题的考虑,估计目前市场使用极少。后续对 MySQL 8.0.x特性做补充。

  在关系数据库领域,MySQL占大半的市场份额,特别是中小型企业或互联网企业。开源的MySQL社区版本是免费的,基本可以满足对业务数据存储的需求。

  近些年出现了很多优秀的NOSQL产品,个人认为NOSQL凭借优秀的特性,与关系数据库是个互相协作的关系,充分发挥各自的优势,为系统提供优秀服务。

  目前还看不到NOSQL可以完全替代关系数据库的迹象,关系数据库仍将长久生存下去,MySQL 仍值的系统研究学习。

MySQL 相关链接:MySQL 官网MySQL Community Server DownloadMySQL DocumentationMySQL GitHubMySQL test_db GitHub

MariaDB(mysql 分支) :MariaDB Foundation(基金会)MariaDB DownloadsMariaDB 社区官网 MariaDB Knowledge Base, MariaDB GitHub

阅读更多

MyBatis:动态SQL与参数绑定(#{} 和 ${})

MyBatis 的强大特性之一便是它的动态 SQL,Mybatis 在对 SQL 语句进行预编译之前,会对 SQL 进行动态解析,解析为一个 BoundSql 对象,同时对动态 SQL 进行处理。

动态 SQL 主要通过OGNL表达式实现 SQL 可以动态判断和选择参数。

阅读更多