- 博客(22)
- 收藏
- 关注
原创 增加表连接来优化SQL
Select Ci.Customer_Id, Ci.Customer_Name, Mc.Card_Id, t.Card_Type_Name, f_Getcustomercontactmeans(Ci.Customer_Id) As Cust_Contactmeans From v_Customer_Info Ci Inner Join
2012-08-06 17:04:06 770
原创 AND_EQUAL和组合索引优化一条SQL
在系统负载高的时候抓出一条SQL,1分23秒左右出152行select a.Case_ID, a.Case_Type_ID, a.Case_Subject, a.Case_Content, a.Create_Employee_ID, a.Case_Create_Time, a.Customer_ID,
2012-07-12 14:34:53 1045
转载 查询访问一个表的两个索引
原文地址:http://yangtingkun.itpub.net/post/468/499769经常看到有人提出这样的疑问,我在同一张表上建立了多个索引,为什么Oracle每次都选择一个,而不能同时利用多个索引呢。一般来说,常见的访问同一张表的两个以上索引,存在三种情况,AND-EQUAL、INDEX HASH JOIN和BITMAP INDEX AND/OR。此外,还有一个设计上的
2012-07-12 09:39:33 2382
原创 表量子查询优化SQL
开发发来条SQL,7分32秒出236行数据 Select Ot.Guest_Id, Ot.Order_Id, Ot.Guest_Name, Oct.Guest_Name, Ot.Ticket_Price, Oct.Ticket_Price From t_To_Order_Tickets Ot Left Join (Se
2012-07-12 09:37:44 866
原创 分区表基本知识
分区表Oracle提供了范围分区、散列分区、列表分区、组合分区4种分区的方法范围分区:按照列值范围将数据分布到不同分区SQL> CREATE TABLE ran_tab ( 2 range_key_column date , 3 data varchar2(20)
2012-07-06 11:22:32 674
转载 绑定变量窥探
Bind Peeking是Oracle 9i中引入的新特性,一直持续到Oracle 10g R2。它的作用就是在SQL语句硬分析的时候,查看一下当前SQL谓词的值,以便生成最佳的执行计划。而在oracle 9i之前的版本中,Oracle 只根据统计信息来做出执行计划。一、绑定变量窥探 使用SQL首次运行时的值来生成执行计划。后续再次运行该SQL语句则使用首次执行计划来执行。
2012-07-06 11:20:50 1107
原创 查看存储过程的执行计划
存储过程没有执行计划,查看的是存储过程中SQL语句的执行计划,这里用10046来看---------------------------------------------------- 创建存储过程Create Or Replace Procedure Lee_Xc(Eno Number) IsBegin Select Empno, Ename, Dname From
2012-07-06 11:17:54 8597
原创 db_link小实验
现在有A B两个实例分别在不同的机器上A: SIDAB: SIDB 现在需要是,我在A的实例里面能够访问到B实例里SCOTT用户下面的表A要访问到B第一条件就是在TNSNAMES里面添加对B的监听,使在A上能够 sqlplus scott/tiger@sidb然后A机器上面输入命令create database link aaa connect to sco
2012-07-06 11:15:23 707
原创 sequence向后推移
昨天导入一个数据库,用户反映导过来的有sequence要小于已经导入到表中的sequence的值。原因生产数据中seq导入的时候可能在操作,导致出现一些重复的出现。为了解决这个问题,我把当前用户下所有的sequence全部向后延至200,具体操作如下:create table MAHANSO_TEST( ID NUMBER, SEQUENCE VARCHAR2(100)
2012-07-06 11:04:07 537
原创 备份恢复统计信息
***************************************************************************生产库上面的操作sys用户下:exec dbms_stats.create_stat_table('gc','stat_gc_0825');exec dbms_stats.export_schema_stats('gc','stat_gc_0
2012-07-06 11:00:27 693
原创 日常维护命令上的锁
--日常维护命令对性能的影响已经上锁的注意事项--1 create index 是4级锁 SQL>Create Index index_CONTACT_NAME On t_to_order_info(CONTACT_NAME) SQL>Select * From V$LOCK Where Type='TM' ADDR KADDR
2012-07-06 10:55:23 947
原创 在线修改表中列的类型
在线上修改有数据的列的类型。首先建立表结构,在建表时把对应列的属性改了---------------------------------------Insert Into T_HP_ROOM_TYPE_2 Select * From T_HP_ROOM_TYPE Rename T_HP_ROOM_TYPE To T_HP_ROOM_TYPE_1;Rename T_HP_RO
2012-07-06 10:46:00 1026
原创 常用的会话相关v$视图
==============SQL语句的========================================================= ================================================================================v$sqltext --------- 存储的是完整的SQL,SQ
2012-07-06 10:11:57 1074
原创 反连接的实验
关于反连接的实验:not exists 和not in等都属于反连接------------------------------------------------------------------------------实验1:SQL> Explain plan for Select * from emp 2 where not exists 3 (Select * fro
2012-07-06 09:31:34 1723
原创 视图融合的例子
今天找到一条5分钟的SQLSQL> explain plan for SELECT orderinfo.order_id, guest_num, guest_name, pnr, orderinfo.order_flow_id, deliverassign.deliver_type_id, deliverassign.deliver_e
2012-07-03 16:49:20 987
原创 子查询解嵌套导致SQL变慢
原SQL如下,跑4分钟左右Select Guest_Id, t_To_Order_Tickets.Order_Id, t_To_Order_Info.Contact_Mobile, Guest_Name, Guest_Idno, Departure_Time, Trip_Num, Arrival_
2012-07-03 16:17:51 3400
原创 not in和or 出的问题
开发发来一条SQL,出了几行数据,要跑40多秒,让优化下原SQL如下 SQL> explain plan for Select Orderinfo.Order_Id, Guest_Num, Guest_Name, Pnr, Orderinfo.Order_Flow_Id, Orderinfo.Del
2012-07-03 14:12:46 1000
原创 删除表的数据来提高SQL效率
今天上午查看em工具,在9点半的时候applications又升到了60去,虽然很快释放,没有引起数据库慢,但是这里还是重视一下。用上午8点到10的快照做成一个awr报告,通过查看 SQL Statistice-SQL ordered by elapsed time,找出排名第一的SQL,Sql如下:---------------------------------------
2012-07-03 13:30:17 1220
原创 创建函数索引优化一条SQL
开发发来一条SQL让优化Select Distinct Oi.Customer_Id, Oi.Order_Id, Oi.Create_Time, 1 Type From t_To_Order_Info Oi Left Join t_To_Consign_Pymt_Record Cpr On Oi.Order_Id = Cpr.Order_Id Where 1 = 1 An
2012-07-03 11:25:53 825
原创 强制走索引失效的情况
select count(0) from creditguarantee cg where 1=1 and cg.createddate>=to_date('2012-02-23','yyyy-MM-dd') and cg.createddate<=to_date('2012-02-26','yyyy-MM-dd') and
2012-07-03 11:16:24 1823
原创 组合索引优化一条SQL
原始SQL,出来的数据为零行,这不是重点,统计信息没有过期,这里不考虑统计信息的问题 分别看下设计到表的行数 select count(*) from t_ho_room_price --3254605 select count(*) from t_ho_order_info --2034996 select count(*) from t_ho_order_s
2012-07-03 11:03:39 979
原创 常用的几种Hints优化一条SQL
环境: oracle 10g R2 Select Count(*) From t_Ho_Order_Statistics --2032946Select Count(*) From t_Ho_Order_Info --2032946其他都是小的维度表统计信息已经检查过了,差不多10天前的(不过我10天前跑过这个SQL,出来的执行计划一样),这里,这里就把注意力集中在两个大表
2012-07-03 10:29:20 3584
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人