Oracle中实现MySQL show index from table建站知识
导读:1建站知识这篇文章主要介绍了Oracle中实现MySQL show index from table命令SQL脚本分享,本文只是模拟了Mysql中的show index 网站seo优化培训营销型网站建设。
这篇文章主要介绍了Oracle中实现MySQL show index from table命令SQL脚本分享,本文只是模拟了Mysql中的show index from table命令,需要的朋友可以参考下
实验数据初始化:
复制代码代码如下: create table t as select * from hr.employees; create index inx_t1 on t(employee_id,first_name desc,last_name); create index inx_t2 on t(job_id,hire_date);
显示该表所有索引的信息。
以dba登录
复制代码代码如下: set linesize 300; set pagesize 100; col c1 format a20; col c2 format a20; col c3 format a20; col c4 format a20; col c5 format a20; col INDEX_NAME format a20; select INDEX_NAME, max(decode(COLUMN_POSITION,1,COLUMN_NAME||','||COLUMN_LENGTH||','||DESCEND,null)) c1, max(decode(COLUMN_POSITION,2,COLUMN_NAME||','||COLUMN_LENGTH||','||DESCEND,null)) c2, max(decode(COLUMN_POSITION,3,COLUMN_NAME||','||COLUMN_LENGTH||','||DESCEND,null)) c3, max(decode(COLUMN_POSITION,4,COLUMN_NAME||','||COLUMN_LENGTH||','||DESCEND,null)) c4, max(decode(COLUMN_POSITION,5,COLUMN_NAME||','||COLUMN_LENGTH||','||DESCEND,null)) c5 from ( select INDEX_NAME,COLUMN_NAME,COLUMN_LENGTH,COLUMN_POSITION,DESCEND from dba_ind_columns where table_owner='LIHUILIN' AND table_name='T' order by INDEX_NAME,column_position ) group by INDEX_NAME;
以普通用户登录
复制代码代码如下: set linesize 300; set pagesize 100; col c1 format a20; col c2 format a20; col c3 format a20; col c4 format a20; col c5 format a20; col INDEX_NAME format a20; select INDEX_NAME, max(decode(COLUMN_POSITION,1,COLUMN_NAME||','||COLUMN_LENGTH||','||DESCEND,null)) c1, max(decode(COLUMN_POSITION,2,COLUMN_NAME||','||COLUMN_LENGTH||','||DESCEND,null)) c2, max(decode(COLUMN_POSITION,3,COLUMN_NAME||','||COLUMN_LENGTH||','||DESCEND,null)) c3, max(decode(COLUMN_POSITION,4,COLUMN_NAME||','||COLUMN_LENGTH||','||DESCEND,null)) c4, max(decode(COLUMN_POSITION,5,COLUMN_NAME||','||COLUMN_LENGTH||','||DESCEND,null)) c5 from ( select INDEX_NAME,COLUMN_NAME,COLUMN_LENGTH,COLUMN_POSITION,DESCEND from user_ind_columns where table_name='T' order by INDEX_NAME,column_position ) group by INDEX_NAME;
但是可以看到,以倒序创建的索引字段,都是以SYS等命名。
Oracle把这种倒序创建的索引字段看成函数索引。
声明: 本文由我的SEOUC技术文章主页发布于:2023-05-22 ,文章Oracle中实现MySQL show index from table建站知识主要讲述标签,标题,SQL网站建设源码以及服务器配置搭建相关技术文章。转载请保留链接: https://www.seouc.com/article/web_4823.html