在sql中索引是拿来干嘛 ?设置好了什么应用?为什么说说索引是为了效率?说得通俗一点哦 举例

 我来答
baiynijecym
2012-12-25 · TA获得超过1841个赞
知道大有可为答主
回答量:1411
采纳率:66%
帮助的人:1174万
展开全部
索引的作用就是提高数据的检索速度,提交查询时由sql优化器决定是否使用。
索引类似于书的目录,通过目录你可以更快的找到你要的内容。
另外索引会影响数据插入的速度,因为插入新的数据时,也需要维护索引,所以一个经常维护的表不能建太多的索引。
追问

还是不明白啊  那说说建立索引后什么样表现出它的作用,比如我在一张表下建立了索引,命令也成功执行了,在索引选项中也能找到它了,但建立那个索引是拿来干嘛的,好像都没什么用一样的

 

点击它右键看它的选项,好像它都没有什么用处作用的。索引拿来干嘛的呀,请高手举例,都说索引类似于书的目录,通过目录你可以更快的找到你要的内容。就按图中的吧,什么样找到它的内容

追答
索引的内容你不用去理会,只有当你要查询数据时才会有用,
举个例子,假设有表A,A的字段有(id,col1,col2,col3)
你在表中建立了一个索引如:create index id_idx on table1(id)
当你执行以下SQL语句进行查询时,

select * from table1 where id = '10'
sql优化器就会考虑使用你建立的索引(当然最后也不一定会使用该索引,sql 优化引挚会对比使用索引和不使用索引的成本,选择成本小的执行计划),如果选择使用索引来查找数据,当sql 执行时就会先扫描索引,通过索引来找到实际的数据所在,然后读取数据,就像你先找到书的目录,然后直接翻到目录指示的第多少页,如果没有索引,就像你不看目录,你必须一页一页的翻,一页一页的找才能找到你要的内容吧。
hejilingbd
2012-12-25 · 超过13用户采纳过TA的回答
知道答主
回答量:113
采纳率:0%
帮助的人:44.4万
展开全部
如果数据量很大的话,会大大提高查询效率
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式