相关疑难解决方法(0)

由于SYS_OP_C2C内部转换,Oracle SQL执行计划发生了变化

我想知道为什么这个查询的成本

select * from address a
left join name n on n.adress_id=a.id
where a.street='01';
Run Code Online (Sandbox Code Playgroud)

高于

select * from address a
left join name n on n.adress_id=a.id
where a.street=N'01';
Run Code Online (Sandbox Code Playgroud)

地址表看起来像这样

ID              NUMBER
STREET          VARCHAR2(255 CHAR)
POSTAL_CODE     VARCHAR2(255 CHAR)
Run Code Online (Sandbox Code Playgroud)

和名称表看起来像这样

ID              NUMBER
ADDRESS_ID      NUMBER
NAME            VARCHAR2(255 CHAR)
SURNAME         VARCHAR2(255 CHAR)
Run Code Online (Sandbox Code Playgroud)

这些是解释计划返回的成本

解释'01'的计划

-----------------------------------------------------------------------------------------------------
| Id  | Operation                    | Name                 | Rows  | Bytes | Cost (%CPU)| Time     |
-----------------------------------------------------------------------------------------------------
|   0 | SELECT STATEMENT             |                      |  3591 |  1595K|    87   (0)| 00:00:02 …
Run Code Online (Sandbox Code Playgroud)

sql oracle oracle11g

11
推荐指数
1
解决办法
4705
查看次数

标签 统计

oracle ×1

oracle11g ×1

sql ×1