MySQL循环语句批量创建数据及索引相关操作

MySQL循环语句批量创建数据(存储过程)

在这里插入图片描述

mysql> delimiter //
mysql> create procedure pr3 ()
-> begin
-> declare i int;
-> set i=2;
-> while i<100000 do
->
insert into runoob_tbl(runoob_id,runoob_title,runoob_author,submission_date) VALUES(NULL,i+“1”,“AUTHORS_”,NOW());**
-> set i=i+1;
-> end while;
-> end
-> //
Query OK, 0 rows affected (0.00 sec)
mysql> delimiter ;
mysql> call pr3 ();

注: 高亮的地方,根据业务需求改变,这里只是举例以插入为代表!上面用斜体加删除线效果注释的参数,是存储过程名称,上下要一致!!!

查询sql语句执行时间
set @d=NOW();
select * from runoob_tbl where runoob_id>100010;  //查询语句
SELECT TIMESTAMPDIFF(SECOND,@d,NOW())

索引
1、索引是什么

索引(Index)是帮助MySQL高效获取数据的数据结构。索引的本质:索引是数据结构。可以理解为“排好序的快速查找数据结构

2、优势

索引,提高数据检索效率,降低数据库的IO成本。
通过索引对数据进行排序,降低数据排序的成本,降低了CPU的消耗。

3、劣势

实际上索引也是一张表,该表保存了主键与索引字段,并指向实体表的记录,所以索引列也是要占空间的。
虽然索引大大提高了查询速度,同时确会降低更新表的速度,如对表进行INSERT、UPDATE、DELETE。
每次更新数据都会涉及到索引的重构。

4、索引的分类

单值索引即一个索引只包含单个列,一个表可以有多个单列索引。
唯一索引索引列的值必须唯一,但允许有空值。
复合索引即一个索引包含多个列。

5、索引的操作

数据表创建联合索引(遵循靠左原则)
//方式1:
CREATE [UNIQUE] index 索引名 on 表名(表字段1,表字段2,表字段3)
//方式2:
ALTER TABLE 表名 ADD [UNIQUE] INDEX 索引名(表字段1,表字段2,表字段3);

删除索引
drop index 索引名 on 表名

查看索引
show index from 表名

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值