mysql索引问题

wangxiaoangg 2018-10-16 11:45:22
遇到一个sql问题。问题大致如下:
有一张用户表user,在id字段 上创建了主键索引,在name字段创建的普通索引。
数据结构的角度分析
select 'xxx' from user where id="xx"
select “xx” from user where name="xxxx" 这两条sql的检索过程。

这道题怎么回答?或者什么书籍可以推荐。
...全文
586 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangxiaoangg 2018-10-17
  • 打赏
  • 举报
回复
主键索引 和普通索引的 数据结构是都B+Tree吧
伟洪winni 2018-10-17
  • 打赏
  • 举报
回复
以B tree和B+ tree的区别来分析mysql索引实现 : https://www.jianshu.com/p/0371c9569736
xuzuning 2018-10-16
  • 打赏
  • 举报
回复
一般的说,索引是一棵二叉树,小于当前值的节点都在该节点的左子树中,反之在右子树中
检索的过程就是遍历树的过程
如果二叉树中,每个节点的左右子树节点数相等(或差一)则称为平衡二叉树,显然平衡二叉树的检索效率要高于普通二叉树
为了更好的进行检索,实际使用的是 B树、B+树,并作了进一步优化
但万变不离其宗(二叉树)

mysql 的检索过程就是打开索引,在其中找到待查数据所在记录的位置,取出对应记录给用户
如果没有索引的话,就得遍历所有记录,取出符合条件得记录给用户

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧