最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

数据库索引操作_MySQL

来源:动视网 责编:小采 时间:2020-11-09 18:40:21
文档

数据库索引操作_MySQL

数据库索引操作_MySQL:bitsCN.com 数据库索引操作 以前没用过索引,没能体会索引的好处,前阵子要处理几百万条记录的表,比如说两边查询,记录多了,查询的速度那是相当的慢,所以就试着用了索引,发现速度提升那可不是一点点,而是很多很多点。 具体操作如下: 一、首先创建两张表
推荐度:
导读数据库索引操作_MySQL:bitsCN.com 数据库索引操作 以前没用过索引,没能体会索引的好处,前阵子要处理几百万条记录的表,比如说两边查询,记录多了,查询的速度那是相当的慢,所以就试着用了索引,发现速度提升那可不是一点点,而是很多很多点。 具体操作如下: 一、首先创建两张表
 bitsCN.com

数据库索引操作

以前没用过索引,没能体会索引的好处,前阵子要处理几百万条记录的表,比如说两边查询,记录多了,查询的速度那是相当的慢,所以就试着用了索引,发现速度提升那可不是一点点,而是很多很多点。

具体操作如下:

一、首先创建两张表,如下图所示:

建表语句如下

[sql] CREATE TABLE `t1` ( `ID` bigint(20) NOT NULL AUTO_INCREMENT, `Num` int(11) NOT NULL, PRIMARY KEY (`ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; 

表二和表一类似创建

二、往两表中填充数据,用存储过程实现,步骤如下:



以上是用navicat创建存储过程的界面,创建两个存储过程,分别网t1、t2中填充数据,代码分别如下:

填充t1的存储过程

[sql] BEGIN #Routine body goes here... declare n int; set n = 1; while n <= 50000 do insert into t1(Num) values(n); set n = n + 1; end while; END 填充t2的存储过程[sql] BEGIN #Routine body goes here... declare n int; set n = 1; while n <= 25000 do insert into t2(Num) values(n); set n = n + 1; end while; set n = 1; while n <= 25000 do insert into t2(Num) values(0); set n = n + 1; end while; END 

三、进行联表查询

求两表中,Num字段相同的行数,查询语句如下:

[sql] select count(*) from t1,t2 where t1.Num = t1.Num; 

t1的每一行都要和t2的每一行进行比较,也就是说t2要被从头到尾扫描50000次,如果数据再大点,再有耐心的人都等不下去了,所以必须想想办法,这里就可以用到索引了。创建索引的好处我在这里就不说了,只说一下如何用索引。

其实很简单,其他都不用变,只需在查询之前多做两件事:

第一、为t1创建索引;

第二、为t2创建索引;

创建索引的语句是:

[sql] create index Num_i1 on t1(Num); create index Num_i2 on t2(Num); 

然后在执行一样的查询语句,没加索引在我电脑上跑要几分钟,加了索引之后,一眨眼的功夫就出结果了。

所以如果当数据量大的时候,一定记得用索引,如果有多个过滤条件,也可以对多个列进行索引。比如

create index Num_i1 on t1(ID,Num); 

bitsCN.com

文档

数据库索引操作_MySQL

数据库索引操作_MySQL:bitsCN.com 数据库索引操作 以前没用过索引,没能体会索引的好处,前阵子要处理几百万条记录的表,比如说两边查询,记录多了,查询的速度那是相当的慢,所以就试着用了索引,发现速度提升那可不是一点点,而是很多很多点。 具体操作如下: 一、首先创建两张表
推荐度:
标签: 记录 操作 数据库
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top