SQL 错误 [ErrorCode : -243] [SQLState : IX000] : 在表 ((Temp Table For Collection Subquery)) 中不能定位。
为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【GBase版本】:
【操作系统】:
【CPU】:
【问题描述】*: SQL 如下:
SELECT
con.accept_no AS acceptNo,
con.consign_org_name AS consignOrgName,
con.accept_datetime AS acceptDateTime,
ci.event_name AS caseName,
ci.event_no AS caseNo,
ci.id,
ci.occurrence_datetime AS occurrenceDatetime,
ci.event_brief AS caseBrief,
ci.case_property AS caseProperty,
get_dict_value(
ci.case_property,
'CASE_PROPERTY'
) AS casePropertyName
FROM
v_event_info ci
LEFT JOIN consignment con ON
con.event_id = ci.id
INNER JOIN(
SELECT
t2.rid
FROM
(
SELECT
rownum rn,
t.rid
FROM
(
SELECT
/*+INDEX(ci I_CI_OCCURRENCE_DATETIME)*/
con.rowid AS rid
FROM
v_event_info ci
LEFT JOIN consignment con ON
con.event_id = ci.id
WHERE
1 = 1
AND con.delete_flag = '0'
AND con.status = '2'
AND con.is_append = '0'
AND ci.internal_match = '1'
AND ci.INIT_SERVER_NO ='530600'
AND con.INIT_SERVER_NO ='530600'
ORDER BY
con.accept_datetime DESC NULLS LAST
) t
WHERE
1 = 1
AND rownum <=0
) t2
WHERE
1 = 1
AND t2.rn >=10
) tt ON
con.rowid = tt.rid
ORDER BY
ci.occurrence_datetime DESC
评论
大概率是顺序扫描导致的,别的会话锁了待查询的记录。
可以使用dirty read查询被锁的记录,也可以设置锁等,等其它会话释放锁。
还可能是语句没有走索引,所以可能需要优化语句,尽量走索引。
热门帖子
- 12025-12-01浏览数:182763
- 22023-05-09浏览数:25057
- 42023-09-25浏览数:18525
- 52020-05-11浏览数:17528
尽量优化语句,使之索引有效。