mysql索引(index)
注意:在实际中,按照abcd… 排序,因为只有排序了才有区间查找这一说.(缩小扫描范围,其实就是扫描某个区间罢了)
在mysql数据库中索引也是要排序的,并且这个索引的排序和TreeSet数据结构相同.(二叉树)
mysql主键和unique上会自动添加索引.
创建索引
create index emp_ename_index on emp(ename);
给emp表的ename字段添加索引,起名:emp_ename_index
删除索引: drop index emp_ename_index on emp;(将emp的ename索引对象删除)
在Mysql 当中查看SQL语句是否使用索引(用explain)
索引失效
第一种情况:使用%
第二种情况:使用 or
第三种情况:复合索引
第四种情况:在where当中参加了运算,索引失效
失效的第五种情况:在where当中索引列使用了函数.
索引是各种数据库进行优化的重要手段.优化的时候优先考虑的因素就是索引.索引在数据库当中分了很多类:
视图(view)
表复制: create table dept2 as select * from dept;
创建视图对象: create view dept2_view as select * from dept2;
删除视图对象: drop view dept2_view;
注意: 只有DQL(查询)语句才能以view的形式创建.
Create view view_name as 这里的语句必须是DQL语句;
用视图做什么?(方便,简化开发,利于维护)-