我m student studying DB..
I was studying big physical three join operations(nested loop, sort merge, and hash join).
and I don
不知道如何将索引与上述连接一起使用..
在这里我有问题..
到底什么是索引...?这只是关键吗?它的数据结构是什么?是真实记录的地址和..索引属性名称的组合吗?
我想知道有关索引如何用作“键”的详细信息。
据我所知,聚集索引是与真实表排序索引匹配的索引。
非聚集索引是对表中实际匹配列的“地址指针”进行排序的索引。
从上面,
那我得这样想。。
那么当我们创建表并指定一个属性作为主键时,它的作用是什么?
主键成为默认聚集索引??并且物理上表的行数据按该主键排序?
还是磁盘上的真正顺序只是插入行数据时的顺序?主键仅用于表之间的关系,不会像索引一样产生任何影响?
那么当我们创建聚集索引时,那么磁盘上的物理顺序会重新排序吗?
这里是我真的无法理解的事情......
怎么说“有了索引,当我们想找到满足特定谓词的数据行时,速度要快得多,因为它已经排序了”
(我在学习sort-merge join的时候发现。消息来源说从每两个表中,如果他们有索引,他们就不需要排序阶段,可以直接合并..)
index 在我们创建索引时使表排序?我不知道为什么它说索引就像'神奇的工具'..
谢谢你。我知道我写得很分散注意力,但我太困惑了,这些正是我脑海中的想法......
- 当涉及到排序合并连接时,
如果他们说“从索引表到真实数据表,它通过 rowid 访问”,ROWID 是什么意思?是主键的不同还是什么????
十分感谢...
*在甲骨文,MySQL的情况下?