oracle 如何根据索引名和表名找到该索引包含的所有字段,有通用SQL语句吗啊

[复制链接]
查看11 | 回复2 | 2012-6-8 12:53:43 | 显示全部楼层 |阅读模式
根据索引找到该索引的所有字段假如有 A 表有 ID,C1,C2,C34个字段。ID上建有索引。那么对于索引的存储结构来说, 包含2个部分,一个是索引包含的数据,也就是 ID 的数字,一个是 索引所在行的 物理地址 (ROWID)当 SELECT * FROM A WHERE id = 1 的时候。首先通过索引,检索到 行的物理地址,然后通过行的物理地址,读取到 C1,C2,C3的数据。假如SQL是 SELECT Count(1) FROM A WHERE id = 1 的时候。数据库在读取完索引以后, 发现不需要读取物理行的信息( 因为 select 里面,没有其他字段), 那么就直接返回了。...
回复

使用道具 举报

千问 | 2012-6-8 12:53:43 | 显示全部楼层
select * from user_ind_columns where index_name = 'xxx'select * from user_ind_columns where table_name = 'xxx'...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行