【问题标题】:Strange query behavior oracle 11g奇怪的查询行为 oracle 11g
【发布时间】:2013-07-29 10:51:22
【问题描述】:

我有一个查询:

SELECT ps_node_id,name 
FROM cz_ps_nodes WHERE cz_ps_nodes.ps_node_type=261
START WITH NAME = 'Bundle Rule Repository',cz_ps_nodes.devl_project_id = P_devl_project_id AND cz_ps_nodes.deleted_flag = 0
CONNECT BY PRIOR ps_node_id = parent_id.

此查询有效。 但是,如果我只是从选择部分中删除名称,例如:

SELECT ps_node_id
FROM cz_ps_nodes WHERE cz_ps_nodes.ps_node_type = 261                       
START WITH NAME = 'Bundle Rule Repository',cz_ps_nodes.devl_project_id = P_devl_project_id AND cz_ps_nodes.deleted_flag = 0                                         
CONNECT BY PRIOR ps_node_id = parent_id.

查询只是挂起,但在 oracle 10g 上运行,当我们升级到 oracle 11g 时问题就开始了。 谁能解释一下原因?

【问题讨论】:

  • 11g的哪个版本和补丁级别?有一些关于性能的错误。如果您已修补,那么您可能需要向 Oracle 提出服务请求以进行调查。
  • PL/SQL 版本是 11.1.0.7.0

标签: performance oracle11g connect-by sqltools


【解决方案1】:

通过使用解决了问题:alter session set optimizer_features_enable='10.2.0.4' –

【讨论】:

    猜你喜欢
    • 2016-03-22
    • 2017-01-27
    • 1970-01-01
    • 1970-01-01
    • 2016-02-24
    • 2010-11-26
    • 2012-09-24
    • 2012-06-05
    • 1970-01-01
    相关资源
    最近更新 更多