问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Oracle试图可以加索引吗

发布网友 发布时间:2022-04-10 14:30

我来回答

2个回答

懂视网 时间:2022-04-10 18:52

技术分享图片
  2)以创建查询表的方式在scott模式下创建包括‘SYS’、‘PUBLIC’、‘SCOTT’三个用户的全部对象
    SQL>  CREATE TABLE scott.DemoTable as
    SQL>2 SELECT * FROM all_objects
    SQL>3 WHERE owner IN (‘SYS‘,‘PUBLIC‘,‘SCOTT‘);
     注意用户名字母必须大写。

技术分享图片
  3) 切换到scott账号进行下一步操作。
     conn scott/tiger@orcl;
技术分享图片
2、查询统计数据表的各数据量大小,了解大数据表中的基本情况。
  1)了解测试表的字段构成
    DESC demoTable;
技术分享图片
  1)查询各用户记录数
    SELECT owner, count(*) 记录数
    FROM demoTable
    GROUP BY owner;

技术分享图片
  2)查询各列记录值的个数
    SELECT count(DISTINCT owner) 所有者数量
        ,count(DISTINCT OBJECT_TYPE) 对象类型数量
        ,count(DISTINCT OBJECT_name) 对象名称数量
    FROM demoTable;
技术分享图片
3、分析表,开启追踪
analyze table demoTable compute statistics;
set autotrace trace explain  --开启追踪
注意:关闭追踪的方法为  set autotrace off;  
技术分享图片
4、对比创建索引前后的查询操作的差异
1)无索引时执行查询(注意:名称中字母都要大写)
    SELECT * FROM demoTable where object_name = ‘EMP‘;

技术分享图片
    SELECT * FROM demoTable where owner =‘SCOTT‘;
技术分享图片
2)创建object_name索引后执行
    --创建索引
    CREATE INDEX idx_objectName ON demoTable(object_name);

技术分享图片
    --执行查询
    SELECT * FROM demoTable where object_name = ‘EMP‘;

技术分享图片
    SELECT * FROM demoTable where owner =‘SCOTT‘;

技术分享图片
    SELECT count(*) FROM demoTable where owner =‘SCOTT‘;
技术分享图片
小结:创建索引只对索引字段出现在where语句中有效。

3)创建owner索引后执行
    --创建索引
    CREATE INDEX idx_owner ON demoTable(owner);

技术分享图片
    --执行查询
    SELECT * FROM demoTable where object_name = ‘EMP‘;

技术分享图片
    SELECT * FROM demoTable where owner =‘SCOTT‘;

技术分享图片
    SELECT count(*) FROM demoTable where owner =‘SCOTT‘;

技术分享图片
小结:创建索引在出现列值出现大量重复时无效,但对聚合操作有效。

4)创建位图索引后执行
    --删除原有owner索引
    DROP INDEX idx_owner;

技术分享图片
    --创建位图索引
    CREATE BITMAP INDEX idx_owner_bitmap ON demoTable(owner);

技术分享图片
    --执行查询
    SELECT * FROM demoTable where object_name = ‘EMP‘;

技术分享图片
    SELECT * FROM demoTable where owner =‘SCOTT‘;

技术分享图片
    SELECT count(*) FROM demoTable where owner =‘SCOTT‘;

技术分享图片
小结:位图索引对聚合操作会产生影响

5、索引的应用小结
   索引类似于座次表,是对数据(记录中的特定字段的值)的位置进行排序优化后的树状存储结构,
一定是在大数据的环境下有效
索引的优点:提高数据查询指定字段  效率,先建立指定字段的索引,并且指定字段的值具有离散性高的特点
缺点:占用空间、降低数据更新的效率
适用于查询多,更新少的大数据环境


6、创建视图
CREATE VIEW vw_test AS
select *
from emp
where sal+nvl(comm,0) > 2500;

CREATE VIEW vw_SalSummary as
select dname,avg(sal) avgSal,min(sal) minSal,max(sal) maxSal
from dept,emp
where dept.deptno = emp.deptno
group by dname;
技术分享图片
7、更新视图
UPDATE vw_test set sal= 1000;
UPDATE vw_salSummary set avgSal=1000;
技术分享图片
8、视图的应用小结
视图优点:可以简化应用,方便权限管理,整合多来源数据、面向应用重组数据
视图中只能在简单视图中进行更新,但有可能更新数据后导致视图记录数发生变化。

oracle视图与索引

标签:img   tis   适用于   max   span   字段   sql   占用   基本概念   

热心网友 时间:2022-04-10 16:00

当然不可以啦,建索引就只能在某个表的列上,你只要记住,普通的视图就只是一条sql语句,你怎么对一条sql语句建立索引?如果数据大的话需要建立索引,那就在你的关联的字段创建索引啊,你怎么会想到要在视图上建啊,你视图和索引的概念不清楚埃
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
ef英语哪个好 EF英孚英语培训怎么样? 英孚英语好不好 EF英孚教育到底好不好 大佬们,麦芒7和荣耀10那个值得入手?2500以下的机子还有啥好推荐的么... 介绍几款2500元以前的手机 像素一定要高 其他的不做要求 近期想入手一部安卓手机,价格2200到2500左右…买HTC desire Z还是 三星... 笔记本忘记开机密码怎么办急死了 笔记本电脑屏幕开机锁忘记密码 怎么办?急死了 华硕笔记本电脑开机密码忘记了怎样找回?系统是Windows 7旗舰版... 七桥问题其实是一个简笔画问题,谁知道怎么解 彩虹是一座桥假如你走在上面你会做些什么?把美好想象写出来 如果你是件见志诗拟建一座什么样的桥请你把心目中的桥画出来并用文字加以? 那个会画桥的简笔画,急啊 你的家乡还有什么样子的桥?请你画一画,写一写。 儿童启蒙教育,简单几步教你桥简笔画 最近美女流行什么发型 打开汽水瓶盖为什么有气泡冒出 是因为压强减小溶解度减小么 今年女生流行什么发型 怎样用好家长微信群 窝窝电影每次播放视频前面的广告那首诗什么歌曲?韩语的 在线优酷、窝窝网上看电视剧后硬盘变小了,怎么办啊,如何删除看过的视频文件啊?谢谢高手帮帮我呗! 窝窝屏幕共享黑屏 室内除湿怎么办才最有效? 想在线观看南京南京电影 家里潮湿,开暖风机和空调暖气有没有效果? 取暖器可以除湿吗 室内除湿最好用去湿机哟 热风机可以用作地下室除湿吗 女生今年流行什么发型 金鹰网“回家的*国语全集”完整版观看“回家的*60集全集”视频在线 钉钉开悬浮窗刷抖音会被发现吗 香脆萝卜干怎么做好吃 钉钉后台学生分屏玩抖音老师能看到吗? 脆香萝卜干咸菜的做法,脆香萝卜干咸菜怎么做 萝卜干怎么办好吃 手机和电脑同时登陆钉钉,电脑看直播,手机看抖音老师会有显示吗? 麻辣香脆萝卜干的做法步骤图,怎么做好吃 荷花的铅笔画法 三本大学是不是都是民办的?若不是,则有哪些是公办的? 所有三本院校都是民办的吗 三本都是民办吗? 特爱吃这种又皮蔫又脆还有嚼头的五香萝卜干,请教这是怎么做的? 三本大学都是民办的吗 三本大学 都是民办吗 二本大多数都是国立大学,三本大多数都是民办大学是么 三本院校都是民办的吗? 三本学校都是私立的吗 民办三本可以吗? 三本院校都是民办的么?国家承认三本院校的学历么?考研率高么?就业怎么样? 谢谢 肺气泡该怎么办。用什么方法