oracle查询慢怎么优化,Oracle查询优化-怎样建立索引优化下面的查询语句啊

下面是转换出来的查询语句

SELECT *

FROM (SELECT "Project1"."C1" AS "C1",

"Project1"."ID" AS "ID",

"Project1"."NVC_ORDERBY" AS "NVC_ORDERBY",

"Project1"."I_STATE" AS "I_STATE",

"Project1"."I_KPSTATE" AS "I_KPSTATE",

"Project1"."VC_FPNO" AS "VC_FPNO",

"Project1"."NVC_TAX" AS "NVC_TAX",

"Project1"."N_TAXRATE" AS "N_TAXRATE",

"Project1"."NVC_CUSTOMER" AS "NVC_CUSTOMER",

"Project1"."N_OPENMONEY" AS "N_OPENMONEY",

"Project1"."NVC_NAME" AS "NVC_NAME",

"Project1"."I_ID_APPLY" AS "I_ID_APPLY",

"Project1"."DT_APPLY" AS "DT_APPLY",

"Project1"."NVC_REMARK" AS "NVC_REMARK",

"Project1"."I_ID_UNIT" AS "I_ID_UNIT",

"Project1"."I_ID_BUNIT" AS "I_ID_BUNIT",

"Project1"."I_ID_USER" AS "I_ID_USER",

"Project1"."DT_WRITE" AS "DT_WRITE",

"Project1"."I_ID_TAX" AS "I_ID_TAX",

"Project1"."I_ID_MONEYTYPE" AS "I_ID_MONEYTYPE"

FROM (SELECT "Project1"."ID" AS "ID",

"Project1"."I_STATE" AS "I_STATE",

"Project1"."I_ID_TAX" AS "I_ID_TAX",

"Project1"."I_ID_MONEYTYPE" AS "I_ID_MONEYTYPE",

"Project1"."N_OPENMONEY" AS "N_OPENMONEY",

"Project1"."NVC_REMARK" AS "NVC_REMARK",

"Project1"."I_ID_APPLY" AS "I_ID_APPLY",

"Project1"."DT_APPLY" AS "DT_APPLY",

"Project1"."I_ID_BUNIT" AS "I_ID_BUNIT",

"Project1"."I_ID_UNIT" AS "I_ID_UNIT",

"Project1"."I_ID_USER" AS "I_ID_USER",

"Project1"."DT_WRITE" AS "DT_WRITE",

"Project1"."N_TAXRATE" AS "N_TAXRATE",

"Project1"."NVC_CUSTOMER" AS "NVC_CUSTOMER",

"Project1"."I_KPSTATE" AS "I_KPSTATE",

"Project1"."VC_FPNO" AS "VC_FPNO",

"Project1"."NVC_ORDERBY" AS "NVC_ORDERBY",

"Project1"."NVC_TAX" AS "NVC_TAX",

"Project1"."C1" AS "C1",

"Project1"."NVC_NAME" AS "NVC_NAME",

ROW_NUMBER() OVER(ORDER BY "Project1"."I_STATE" ASC, "Project1"."I_KPSTATE" ASC, "Project1"."ID" DESC) AS "row_number"

FROM (SELECT "Filter1"."ID1" AS "ID",

"Filter1"."I_STATE1" AS "I_STATE",

"Filter1"."I_ID_TAX" AS "I_ID_TAX",

"Filter1"."I_ID_MONEYTYPE" AS "I_ID_MONEYTYPE",

"Filter1"."N_OPENMONEY" AS "N_OPENMONEY",

"Filter1"."NVC_REMARK" AS "NVC_REMARK",

"Filter1"."I_ID_APPLY" AS "I_ID_APPLY",

"Filter1"."DT_APPLY" AS "DT_APPLY",

"Filter1"."I_ID_BUNIT1" AS "I_ID_BUNIT",

"Filter1"."I_ID_UNIT1" AS "I_ID_UNIT",

"Filter1"."I_ID_USER1" AS "I_ID_USER",

"Filter1"."DT_WRITE1" AS "DT_WRITE",

"Filter1"."N_TAXRATE" AS "N_TAXRATE",

"Filter1"."NVC_CUSTOMER" AS "NVC_CUSTOMER",

"Filter1"."I_KPSTATE" AS "I_KPSTATE",

"Filter1"."VC_FPNO" AS "VC_FPNO",

"Filter1"."NVC_ORDERBY" AS "NVC_ORDERBY",

"Filter1"."NVC_TAX" AS "NVC_TAX",

1 AS "C1",

"Extent3"."NVC_NAME" AS "NVC_NAME"

FROM (SELECT "Extent1"."ID" AS "ID1",

"Extent1"."I_STATE" AS "I_STATE1",

"Extent1"."I_ID_TAX" AS "I_ID_TAX",

"Extent1"."I_ID_MONEYTYPE" AS "I_ID_MONEYTYPE",

"Extent1"."N_OPENMONEY" AS "N_OPENMONEY",

"Extent1"."NVC_REMARK" AS "NVC_REMARK",

"Extent1"."I_ID_APPLY" AS "I_ID_APPLY",

"Extent1"."DT_APPLY" AS "DT_APPLY",

"Extent1"."I_ID_BUNIT" AS "I_ID_BUNIT1",

"Extent1"."I_ID_UNIT" AS "I_ID_UNIT1",

"Extent1"."I_ID_USER" AS "I_ID_USER1",

"Extent1"."DT_WRITE" AS "DT_WRITE1",

"Extent1"."I_FILECOUNT" AS "I_FILECOUNT",

"Extent1"."N_TAXRATE" AS "N_TAXRATE",

"Extent1"."NVC_CUSTOMER" AS "NVC_CUSTOMER",

"Extent1"."I_KPSTATE" AS "I_KPSTATE",

"Extent1"."VC_FPNO" AS "VC_FPNO",

"Extent1"."NVC_ORDERBY" AS "NVC_ORDERBY",

"Extent2"."ID" AS "ID2",

"Extent2"."VC_NO" AS "VC_NO",

"Extent2"."I_TYPE" AS "I_TYPE",

"Extent2"."NVC_TAX" AS "NVC_TAX",

"Extent2"."I_ID_BUNIT" AS "I_ID_BUNIT2",

"Extent2"."I_STATE" AS "I_STATE2",

"Extent2"."I_ID_UNIT" AS "I_ID_UNIT2",

"Extent2"."I_ID_USER" AS "I_ID_USER2",

"Extent2"."DT_WRITE" AS "DT_WRITE2"

FROM "XYZLS"."T_CW_FPOPENAPPLY" "Extent1"

INNER JOIN "XYZLS"."T_CW_FPTAX" "Extent2"

ON "Extent1"."I_ID_TAX" = "Extent2"."ID"

WHERE ((1 = "Extent1"."I_ID_UNIT") OR

(6182 = "Extent1"."I_ID_UNIT") OR

(6422 = "Extent1"."I_ID_UNIT") OR

(6502 = "Extent1"."I_ID_UNIT") OR

(6541 = "Extent1"."I_ID_UNIT") OR

(6183 = "Extent1"."I_ID_UNIT") OR

(6185 = "Extent1"."I_ID_UNIT") OR

(6201 = "Extent1"."I_ID_UNIT") OR

(6801 = "Extent1"."I_ID_UNIT") OR

(7101 = "Extent1"."I_ID_UNIT") OR

(6221 = "Extent1"."I_ID_UNIT") OR

(6241 = "Extent1"."I_ID_UNIT") OR

(6361 = "Extent1"."I_ID_UNIT") OR

(6261 = "Extent1"."I_ID_UNIT") OR

(6281 = "Extent1"."I_ID_UNIT") OR

(6721 = "Extent1"."I_ID_UNIT") OR

(6401 = "Extent1"."I_ID_UNIT") OR

(6641 = "Extent1"."I_ID_UNIT") OR

(6681 = "Extent1"."I_ID_UNIT") OR

(6481 = "Extent1"."I_ID_UNIT") OR

(6902 = "Extent1"."I_ID_UNIT") OR

(6482 = "Extent1"."I_ID_UNIT") OR

(6901 = "Extent1"."I_ID_UNIT") OR

(7041 = "Extent1"."I_ID_UNIT") OR

(6561 = "Extent1"."I_ID_UNIT") OR

(6581 = "Extent1"."I_ID_UNIT") OR

(6582 = "Extent1"."I_ID_UNIT") OR

(6583 = "Extent1"."I_ID_UNIT") OR

(6584 = "Extent1"."I_ID_UNIT") OR

(6585 = "Extent1"."I_ID_UNIT") OR

(6881 = "Extent1"."I_ID_UNIT") OR

(7001 = "Extent1"."I_ID_UNIT") OR

(6661 = "Extent1"."I_ID_UNIT") OR

(7061 = "Extent1"."I_ID_UNIT") OR

(6162 = "Extent1"."I_ID_UNIT") OR

(6821 = "Extent1"."I_ID_UNIT") OR

(6921 = "Extent1"."I_ID_UNIT") OR

(6961 = "Extent1"."I_ID_UNIT") OR

(7062 = "Extent1"."I_ID_UNIT") OR

(7081 = "Extent1"."I_ID_UNIT") OR

(7082 = "Extent1"."I_ID_UNIT"))) "Filter1"

LEFT OUTER JOIN "XYZLS"."T_BASE_MONEYTYPE" "Extent3"

ON "Filter1"."I_ID_MONEYTYPE" = "Extent3"."ID"

WHERE (("Filter1"."DT_APPLY" >= TO_DATE('2019-01-01', 'yyyy-mm-dd')) AND

("Filter1"."DT_APPLY" <= TO_DATE('2019-12-30', 'yyyy-mm-dd')))) "Project1") "Project1"

WHERE ("Project1"."row_number" > 0)

ORDER BY "Project1"."I_STATE" ASC,

"Project1"."I_KPSTATE" ASC,

"Project1"."ID" DESC)

WHERE (ROWNUM <= (35))

其中最多的T_CW_FPOPENAPPLY表有50万数据 其他表数据都不多

ID为主键

471ce4608451c11ea124b2278cd231f8.png

e97e3fc51fa2f4895f8cb4fad2d63840.png

耗时一秒多,我觉得太慢了

后来我把orderby里面的前两个条件去掉,去掉之后

8ac7ac877fd1365f9fca992da3d3d12b.png

7e0d569c15670cfece18ae535a27e910.png

发现,哇 太快了吧,要的就是这种效果

请问,如果我不去掉这两个排序字段,如何建立索引优化查询速度

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/551639.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

复试情报准备

英语自我介绍&#xff0c;介绍完老师会根据你的回答用英语问你问题&#xff0c;比如介绍一下你的本科学校&#xff0c;或者家乡什么的。计网过一遍&#xff0c;会问两道题。接下来是重点&#xff0c;我当时是根据我成绩单&#xff0c;问了我本科学过的科目&#xff0c;比如pyth…

chrome切换前端模式_Chrome调试工具developer tool技巧 - 轩枫阁

Chrome这个浏览器赞的不能再赞了&#xff0c;给前端的开发调试工作带来了极大的效率提升。Chrome的简洁、快速吸引了无数人&#xff0c;它的启动速度、页面解析速度都很快&#xff0c;同时得益于Google V8的快速&#xff0c;Javascript执行速度也飞快。而且它对HTML5和CSS3的支…

oracle创建索引01652,建立数据表快照导致ora-01652异常

建立数据表快照导致ora-01652错误由于源表过大&#xff0c;数据查询速度较慢&#xff0c;在做后台的相关查询的时候较慢&#xff0c;于是决定创建数据快照&#xff0c;提高查询速度&#xff0c;快照创建语句如下&#xff1a;CREATE SNAPSHOT sn_ydmobilebankREFRESH COMPLETE S…

linux上安装python2.6.9_在Linux CentOS 6.6上安装Python 2.7.9

CentOS 6.6自带的是Python 2.6.6&#xff0c;而编译llvm需要Python 2.7以上。checking for python... /usr/bin/pythonchecking for python > 2.7... not foundconfigure: error: found python 2.6.6 (/usr/bin/python); required > 2.7yum中最新的也是Python 2.6.6&…

用python批量下载网络图片_python 批量下载网页里的图片

import requests import sys,re #设置提取图片url 的正则表达式 imgre re.compile(r" #存放找到的 图片url的列表 all_img_urls [] #图片下载后存放位置 save_path r‘/root‘ #获取指定网页中的图片url def get_img_url(tmpurl,tmpre,allimgurl,timeout10): headers …

php中cnum函数,PHP vprintf() 函数

更多实例例子 1使用格式值 %f&#xff1a;<?php $num1 123;$num2 456;vprintf("%f%f",array($num1,$num2));?>例子 2使用占位符&#xff1a;<?php $number 123;vprintf("有两位小数&#xff1a;%1\$.2f没有小数&#xff1a;%1\$u",array($n…

alter table add column多个字段_利用Python将多个excel合并到一个文件中

数据岗位的小伙伴可能经常会遇到这样一个问题&#xff1a;多个来源返回的数据怎么整合到一个文件中&#xff1f;手动经常会出错&#xff0c;下面介绍一种利用Python处理的方式&#xff1a;前期准备&#xff1a;1、多个excel需要进行数据整理&#xff0c;保证文件的结构一致&…

单链表操作实现getelem_c语言实现--带头结点单链表操作

可能是顺序表研究的细致了一点&#xff0c;单链表操作一下子就实现了。这里先实现带头结点的单链表操作。大概有以下知识点.1;结点&#xff1a;结点就是单链表中研究的数据元素&#xff0c;结点中存储数据的部分称为数据域&#xff0c;存储直接后继地址的部分称为指针域。2;结点…

php ouput buffer,Redis配置详解-客户端缓冲区 output buffer

客户端缓冲区 output buffer大概已经知道Redis是一个内存数据库&#xff0c;这意味着所有的数据都由RAM直接管理和提供的。因此Redis有着卓越的交付性能&#xff0c;Redis可以以亚毫秒级的延迟处理几万、几十万的请求。Redis&#xff0c;如同它的名字和设计&#xff0c;是一个移…

python布尔测试_Python布尔函数:用真值优化代码

Python布尔类型是Python的内置数据类型之一。它用来表示表达式的真实值。例如&#xff0c;表达式1<2为True&#xff0c;而表达式01为False。了解Python布尔值的行为对于在Python中良好编程是非常重要的。Python布尔类型Python布尔类型只有两个可能的值&#xff1a;TrueFalse…

结构体中vector自动为0_面试题:你是如何选择顺序存储数据结构的?

作者&#xff1a;Tarun Telang 来源&#xff1a;https://dzone.com/articles/arraylist-or-linkedlist本文为Java开发人员选择适当的顺序数据结构提供指导。ArrayList 和 LinkedList 是 Java 集合框架中用来存储对象引用列表的两个类。ArrayList 和 LinkedList 都实现 List 接口…

python 公开课_python公开课视频(11~20)

Python基础教程视频教程 各集内容简介 通俗易懂&#xff0c;语言简练&#xff0c;保证入门。 11. Python基础教程视频教程 第 11 集 Python的分支语句if基础 本集主要讲述Python条件分支语句if的基本使用和语法结构&#xff0c;if嵌套和多分支if语句程序设计等问题。 12. Pytho…

oracle 随机排列,oracle的随机排序

oracle的随机排序项目里一个功能要用到随机排序&#xff0c;但是后来又因为数据量大的原因&#xff0c;要分页去查询数据&#xff0c;结果导致查询出来的数据出现重复。原sql如下select * from ( select row_.*, rownum rownum_ from(select * from tble order by dbms_random.…

c# 低功耗蓝牙_c# - 如何使用C#手动绑定到WinForm中的蓝牙低能耗设备? - 堆栈内存溢出...

我想到了。 我走在正确的轨道上。使用以下连接后&#xff1a;var dev await BluetoothLEDevice.FromBluetoothAddressAsync(args.BluetoothAddress);您需要执行自定义配对&#xff1a;var prslt await device.DeviceInformation.Pairing.Custom.PairAsync(DevicePairingKinds…

python字典求平均值_Python - 字典中各个键的每个值的均值

我在跨整个字典进行迭代时遇到问题&#xff0c;无法对键的值中的每个元素进行简单的汇总统计&#xff08;平均值&#xff09;。Python - 字典中各个键的每个值的均值 我的字典由那些号码清单键和值&#xff1a; test_dict{NJ:[20,50,70,90,100],NY:[10,3,0,99,57],CT:[90,1000,…

数字填图问题matlab上机实验报告,数学建模实验报告数字填图问题

数字填图问题一、实验目的及意义本实验旨在通过生活中几个常见的数字填图问题的探究&#xff0c;探究这类问题的逻辑推理解法和计算机解法&#xff0e;二、实验内容1. 数字填图的逻辑推理&#xff1b;2. 数字填图的计算机解法。三、实验步骤1.开启软件平台——MA TLAB&#xff…

c++ 函数指针_进化论——从函数指针到被结构封装的函数指针及参数的应用举例...

↑↑↑ 点击上方公众号名称关注&#xff0c;不放过任何转变的机会。✎ 编 者 悟 语借口再小也会瓦解人的意志。文 章 导 读今天带大家用下函数指针&#xff0c;然后将函数指针和函数参数封装到结构体中&#xff0c;接着将数据用动态分配和静态分配的方式赋值给相应的函数&#…

domino流程图_OA实施工程师一线解读Java与Domino优劣

南宁OA软件泛微运营中心云腾为您分享&#xff1a;作为企业的CIO&#xff0c;不仅要面对企业内部的各类需求&#xff0c;还需要管理理念以及对市面上的信息化系统和技术了如指掌&#xff0c;否则很有可能在自己的职业生涯中划上遗憾的一笔。固然是吃一堑长一智&#xff0c;但谁不…

oracle中packages使用,oracle中packages的使用

最近&#xff0c;由于开发的功能较多&#xff0c;对于编写的很多过程&#xff0c;看着英文名字觉得挺熟悉&#xff0c;但要看功能&#xff0c;则需要每个点开去开备注或者代码&#xff0c;觉得很是郁闷。突见packages&#xff0c;想将所有写的过程放到一起&#xff0c;这样下次…

python怎么做软件界面_python – 如何自定义桌面应用程序的标题栏和窗口

我如何自定义标题栏(包括&#xff1a;关闭,最大化,最小化按钮,标题)和用PyQt编写的桌面应用程序框架,使其看起来像下面的图像&#xff1f;我需要一种方法来指定我想用于标题栏元素的颜色(按钮,文本标题和条形和按钮的背景颜色).我需要更改其窗口的代码&#xff1a; import sys …