![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
MySQL
文章平均质量分 92
zyyn_未来可期
热爱生活,更热爱你~
展开
-
新来个技术总监:谁再用 count(*) 查询记录数,以后就不用来了!
最近我在公司优化过几个慢查询接口的性能,总结了一些心得体会拿出来跟大家一起分享一下,希望对你会有所帮助。我们使用的数据库是Mysql8,使用的存储引擎是Innodb。这次优化除了优化索引之外,更多的是在优化count(*)。通常情况下,分页接口一般会查询两次数据库,第一次是获取具体数据,第二次是获取总的记录行数,然后把结果整合之后,再返回。它没有性能问题。却存在性能差的问题。为什么会出现这种情况呢?转载 2023-01-30 16:23:23 · 458 阅读 · 0 评论 -
SQL 优化小妙招
1、反例2、正例3、理由1、反例2、正例(1)使用union all(2)分开两条sql写3、理由1、正例2、理由1、反例2、正例3、理由1、反例2、正例3、理由1、反例2、理由三种连接如果结果相同,优先使用,如果使用左边表尽量小。为什么?1、正例先过滤,后分组2、反例先分组,再过滤3、理由在执行到该语句前,把不需要的记录过滤掉在功能上与不带 子句的 语句相同:二者均删除表中的全部行。但 比 速度快,且使用的系统和事务日志资源少。语句每次删除一行,并在事务日志中为所删除的每行记录一项原创 2023-01-11 11:07:33 · 240 阅读 · 0 评论 -
你了解MySQL都包含哪些“零件“吗?
老师说作为一个后端开发,MySQL是我们常用的技术之一,也是面试中的高频面试题,那么你了解MySQL的基本架构吗?知道MySQL包含的各个"零件"和他们的作用吗?下面我们就来聊一聊MySQL的架构。一张鸟瞰图,先让大家有个基础的认识是的没毛病,从上面的中我们不难看出我们熟悉的MySQL可以分为Server层和存储引擎层两部分。等。从上面这些信息相信大家也都能体会到Server层的重要性,而存储引擎层主要负责我们数据的存储和提取。...原创 2022-07-18 15:50:24 · 296 阅读 · 0 评论 -
MySQL是怎样运行的 七(子查询)
子查询指一个查询语句嵌套在另一个查询语句内部的查询,这个特性从MySQL 4.1开始引入。SQL 中子查询的使用大大增强了 SELECT 查询的能力,因为很多时候查询需要从结果集中获取数据,或者需要从同一个表中先计算得出一个数据结果,然后与这个数据结果(可能是某个标量,也可能是某个集合)进行比较。1. 需求分析与问题解决1.1 实际问题现有解决方式:#方式一: SELECT salary FROM employees WHERE last_name = 'Abel'; SELECT last原创 2022-04-26 14:31:25 · 367 阅读 · 0 评论 -
MySQL是怎样运行的 六(聚合函数)
聚合(或聚集、分组)函数:它是对一组数据进行汇总的函数,输入的是一组数据的集合,输出的是单个值。1. 聚合函数介绍什么是聚合函数聚合函数作用于一组数据,并对一组数据返回一个值。聚合函数类型AVG()SUM()MAX()MIN()COUNT()聚合函数语法注意:聚合函数不能嵌套调用。比如不能出现类似“AVG(SUM(字段名称))”形式的调用。1.1 AVG和SUM函数可以对数值型数据使用AVG 和 SUM 函数。SELECT AVG(salary), MAX(salar原创 2022-04-26 09:21:45 · 153 阅读 · 0 评论 -
MySQL是怎样运行的 五(单行函数)
一、 函数的理解1.1 什么是函数函数在计算机语言的使用中贯穿始终,函数的作用是什么呢?它可以把我们经常使用的代码封装起来,需要的时候直接调用即可。这样既 提高了代码效率 ,又 提高了可维护性 。在 SQL 中我们也可以使用函数对检索出来的数据进行函数操作。使用这些函数,可以极大地 提高用户对数据库的管理效率 。从函数定义的角度出发,我们可以将函数分成 内置函数 和 自定义函数 。在 SQL 语言中,同样也包括了内置函数和自定义函数。内置函数是系统内置的通用函数,而自定义函数是我们根据自己的需要编写原创 2022-04-25 20:12:13 · 265 阅读 · 0 评论 -
MySQL是怎样运行的 四(多表查询)
多表查询,也称为关联查询,指两个或更多个表一起完成查询操作。前提条件:这些一起查询的表之间是有关系的(一对一、一对多),它们之间一定是有关联字段,这个关联字段可能建立了外键,也可能没有建立外键。比如:员工表和部门表,这两个表依靠“部门编号”进行关联。一、一个案例引发的多表连接1、案例说明从多个表中获取数据:#案例:查询员工的姓名及其部门名称 SELECT last_name, department_name FROM employees, departments;查询结果:分析错误原创 2022-04-25 10:03:46 · 157 阅读 · 0 评论 -
MySQL是怎样运行的 三(排序与分页)
一、 排序数据1、 排序规则使用 ORDER BY 子句排序ASC(ascend): 升序DESC(descend):降序ORDER BY 子句在SELECT语句的结尾2、 单列排序SELECT last_name, job_id, department_id, hire_date FROM employees ORDER BY hire_date ;3、 多列排序SELECT last_name, department_id, salary FROM employees原创 2022-04-19 15:08:05 · 103 阅读 · 0 评论 -
MySQL是怎样运行的 二 (运算符)
一、算术运算符算术运算符主要用于数学运算,其可以连接运算符前后的两个数值或表达式,对数值或表达式进行加(+)、减(-)、乘(*)、除(/)和取模(%)运算。1.加法与减法运算符mysql> SELECT 100, 100 + 0, 100 - 0, 100 + 50, 100 + 50 -30, 100 + 35.5, 100 - 35.5 FROM dual; +-----+---------+---------+----------+--------------+----------原创 2022-04-18 21:39:07 · 175 阅读 · 0 评论 -
MySQL是怎样运行的 一 (基本的SELECT语句)
一、SQL概述1、SQL背景知识1946 年,世界上第一台电脑诞生,如今,借由这台电脑发展起来的互联网已经自成江湖。在这几十年里,无数的技术、产业在这片江湖里沉浮,有的方兴未艾,有的已经几幕兴衰。但在这片浩荡的波动里,有一门技术从未消失,甚至“老当益壮”,那就是 SQL。45 年前,也就是 1974 年,IBM 研究员发布了一篇揭开数据库技术的论文《SEQUEL:一门结构化的英语查询语言》,直到今天这门结构化的查询语言并没有太大的变化,相比于其他语 言, SQL 的半衰期可以说是非常长了。不原创 2022-04-17 21:39:07 · 147 阅读 · 0 评论