Oracle 数据链路问题处理

    Select /*+Rule*/

     NewId(), t.执行部门ID, x.名称 部门姓名, t.开单人 医生姓名, t.开单部门id, b.收入项目 类别, t.姓名 病人姓名, b.编码, b.指标名称 收费细目, 登记时间, 门诊标志

    From 病人费用记录@zlhis t, 收费项目目录@zlhis a, 考核指标 b, 部门表@zlhis x

    Where t.记录状态 <> 0 And t.收费细目ID = a.id And a.编码(+) = b.编码 And t.开单部门id = x.id And

          b.收入项目 In ('心电图', '彩超费', '检验费', '理疗治疗', '放射费', '胃镜检查费', 'B超费', '手术费', '处置费', '处置治疗费', '抢救费', '监测费', '检查费', '诊疗费', '材料费') And

          t.登记时间 between to_date('2010-9-1','yyyy-mm-dd') and to_date('2010-9-20','yyyy-mm-dd') And b.所属机构 = 'b73a2918-cf1b-4357-851f-c16a45826404';


本身本局SQL 在存储过程编译本身就是非常之慢,在程序调用是会有 超时现象,


怀疑数据查询在哪里出了问题,  第一考虑,FIrst_Rows

结果依然有问题,因为系统默认是 All_Rows 所以只是求得 相应的做法也是没有成效的,所以考虑采用 Rule 的方式处理... 结果出乎预料,出奇的快


你可能感兴趣的:(Oracle,实际应用,Oracle,运行效率/优化)