如何实现 MySQL 中通过SQL语句删除重复记录并且只保留一条记录
MySQL

如何实现 MySQL 中通过SQL语句删除重复记录并且只保留一条记录

13 0

最近在做题库系统,由于在题库中添加了重复的试题,所以需要查询出重复的试题,并且删除掉重复的试题只保留其中1条,以保证考试的时候抽不到重复的题。首先写了一个小的例子:一、单个字段的操作这是数据库中的表:分组介绍Select重复字段From表GroupBy重复字段HavingCount*1查看是否有重复...

阅读全文
面试官问:为什么选择 B+ 树作为数据库索引结构?
MySQL

面试官问:为什么选择 B+ 树作为数据库索引结构?

117 0

首先,来谈谈B树。为什么要使用B树?我们需要明白以下两个事实:【事实1】不同容量的存储器,访问速度差异悬殊。以磁盘和内存为例,访问磁盘的时间大概是ms级的,访问内存的时间大概是ns级的。有个形象的比喻,若一次内存访问需要1秒,则一次外存访问需要1天。所以,现在的存储系统,都是分级组织的。最常用的数据...

阅读全文
MySQL

MySQL 表之间关联查询时,为什么建议小表驱动大表?

105 0

有的时候我们在操作数据库时会将两个或多个数据表关联起来通过一些条件筛选数据,在关联表时我们要遵循一些原则,这样会使我们编写的SQL 语句在效率上快很多。一、优化原则小表驱动大表,即小的数据集驱动大得数据集。在知道什么是小表驱动大表之前,我们先来了解两个查询关键字,IN 与 EXISTS。我们通过两段...

阅读全文
MySQL

MySQL百万级、千万级数据多表关联SQL语句调优

141 0

本文不涉及复杂的底层数据结构,通过explain解释SQL,并根据可能出现的情况,来做具体的优化,使百万级、千万级数据表关联查询第一页结果能在2秒内完成真实业务告警系统优化结果。希望读者能够理解SQL的执行过程,并根据过程优化,走上自己的成金之路需要优化的查询:使用explain出现了Using t...

阅读全文