Oracle 在v$sql中看到一次查询运行的两个条目
我最近试图理解Oracle的数据字典表,我注意到了一些相当奇怪的事情 当我运行如下查询时Oracle 在v$sql中看到一次查询运行的两个条目,oracle,oracle11g,Oracle,Oracle11g,我最近试图理解Oracle的数据字典表,我注意到了一些相当奇怪的事情 当我运行如下查询时 select * from table where id in (?, ?); 只有一次,我注意到在v$sql中为同一个查询创建了两行。为什么呢 但是,如果我运行类似 select * from table where id = 10; 我只看到创建了一行。您确定要为语句的一次执行创建多个v$sql行吗?由于绑定变量差异等原因,在后续执行中使用不同的解释计划时,创建多个
select * from table where id in (?, ?);
只有一次,我注意到在v$sql中为同一个查询创建了两行。为什么呢
但是,如果我运行类似
select * from table where id = 10;
我只看到创建了一行。您确定要为语句的一次执行创建多个v$sql行吗?由于绑定变量差异等原因,在后续执行中使用不同的解释计划时,创建多个行并不少见。Tom Kyte在这里对此进行了解释:这两行对于
child\u number
是否有不同的值?