00:00
那来看一下,一单值索引,一个索引列只包含单个列,一个表可以有多个单列索引。好,各位亲,至少以我们这个马的数据版本为例,一张表一般而言最多哈,折中一点,首先一定是见符合索引优于单值索引听懂,因为你不可能把要求别人说,诶,兄弟,你来查什么?任何东西你只能按照什么单指来查,大部分都会多选。当然如果针对频繁使用的一些字段,比如说这个哥们儿,一般而言,银行系统是不是会按照两个字段来进行单独的查询,哪两个字段?第一个你的银行卡号,第二个是不是个人的身份证号码呀,姓名是绝对不可以的,王帆这个名字中国至少有200万吧,同意吗?好,这不就是符合索引了吗?能理解,如果说你要是说因为首先什么跟我讲,你在一个系统里面11位的手机号码是不是绝对足够是不重复的了,当然不排除哈,有一种情况就是同,因为不能用,名字是啥呢?一个人有没有可能有两部手机,我名下是不是有两个不重复的号码,但是名字是不是还是我本人同一个,OK,好那么所以说这样的话呢,第一点第二点各位亲,一张表最多哈。
01:27
见的索引不要超过五个,当然这是一种中规中矩的一种建议,听懂了吧,但是你说我就要见到八个,那行不行呢?但是呢,注意,那你说会不会出现这种情况,满SQL的查询优化器,主人你打的这条SQL,我到最后会跟他们讲索引分析以后发现,诶你在这个上面呢,建了五个索引,MYSQL自我分析以后说主人我呢收到你的命令和之前的操作,你给我建了五个索引,我个人评估了以后,我可能会用到其中的两个或者三个,然后告诉你最终我用到了哪一个,也就是说以目前这个版本为例,我们是不是同一时间段只能加载一个索引去用啊?
02:15
听懂了吗?就如同说你你们你们你呢特别牛,有很多房子,但是今天晚上你也只能睡在一间屋子里面吧,听懂你昌平区有一套房子啊,海淀区有一套房子啊,你跟我讲你今天晚上不可能同时睡两边吧,把自己批啊,竖的劈还是横着劈啊是吧?那么这个呢,就是一个一乐来单指索引下面唯一索引,那么呢,什么概念呢?索引列的值必须唯一,但允许有空值,就是说假设我们建一个create index,这个是不是建了一个中规中矩的普通的索引啊,还有一种情况是UNUNIQ的关键词啊,也就是加了这种约束和这种限制条件以后,是不是比如说我们就要求银行系统里面的银行卡号就必须是唯一的,这个同意吧,那么所以说这种索引是不是就是唯一索引,就是也就它也是索引。只不过对这个。
03:15
值,比如说name user nameme,这个user nameme,我建一个普通索引,普通索引我这套系统里面就有三个人叫王芳,可不可以这一个字段就重名,可不可能user name可不可以重名?好,但是如果叫登card number,银行卡号跟我讲这个就不能重了吧,OK,就这个意思来符合索引,记一个索引包含了几个列,OK哈,那么呢,最终它的基本语法就是这样,第一个这个中括号代表可以省略的意思,没问题吧,Index索引名on table column字段,也就是说最中规中矩的呢,有两种键法,第一种就是像create table一样,只不过改改为了create index o吗?然后呢,如果是加唯一索引就加这个关键词,不加。
04:15
拉倒,那么再来索引名字啊,二哪张表上面的哪些字段,你给他建这么一个名字的索引,如果说这个后面只写了一个,那是不是就是单指索引,如果写了多个,是不是就是符合索引啊?那么这是用create的方式,第二种用out table ADD索引和索引名字啊,On干嘛字段,当然这个table是不是已经被改到前面了,好,那么也就是说out table at,这个是叫index添加索引,你们是不是也学过按column加一列呀,好,都是一样哈,那么呢,Drop index索引名字上面定义的名字,一般而言我们都叫IDX下划线,某张表加那些扩字段听懂,那么这个时候on table就是你要把某张表上面的某个索引给我上了,好,最后show index from table name,那么呢,我们这儿可以来一下,那么show。
05:15
Index from t BL,昨天我们建了一个EP,那么这个时候同学们请看,大家看我这是不是有一个组件啊,ID员工表里有个部门ID是不是外键啊,好,大家看所有的类型叫什么,是不是叫B数啊,或者叫btra索引,那么这个是不是我们就像我们说的,毕竟本次我们是立足于Java开发相关的数据库知识,并不是专业的DBA培训,听懂好,那么呢,我们围绕着这个来展现,那么呢?往下看,那么呢,这些就是创建,删除,查看,那么最终给大家呢,总结了一些公式,那么呢,可以用四种方式呢来更改数据表的索引,说白了是不是就是out table的使用啊,那么这个是不是填主键,主键是不是一种唯一索引,能理解了吗?OK,好,那么上面是什么?这个是主键,这是唯一索引,这是普通索引,是全文索引,好那么呢,这边我们呢,看了以后我们来看看索引。
我来说两句