查詢出資料庫中缺省會以全表掃瞄方式訪問的表

2021-04-16 22:36:09 字數 853 閱讀 7723

這個查詢可以根據初始化引數設定和軟體版本,查詢出缺省情況下會以全表掃瞄方式訪問的表。

/*auth:chensq#itpub.net

date:2005-07-29 17:43*/

select segment_name,bytes from dba_segments a,dba_tables b

where bytes<(

case when (select 0 from dual where not exists (select value from v$parameter where name like '%**all_table_%'))=0 then

--parameter _**all_table_threshold is not seted

(select case when (select substr(banner,6,1) from v$version where banner like 'core%')<9 then --lower than 9i

(select value*.02 from v$parameter where name='db_cache_size')

else (bytes/a.blocks)*20--above 9i

end from dual)

else

(select to_number(value) from v$parameter where name like '%**all_table_%')

end)--_**all_table_threshold

and a.segment_name=b.table_name

這個查詢可以根據初始化引數設定和軟體版本,查詢出缺省情況下會以全表掃瞄方式訪問的表。

oracle怎麼查詢資料庫的預設表空間

在oracle中,可以通過select語句查詢資料字典dba users來查詢資料庫表空間,語法 select from dba tablespaces 能返回包含資料庫中所有表空間的描述資訊。本教程操作環境 windows7系統 oracle 11g版 dell g3電腦。oracle表空間 or...

資料庫 SQLServer中預設表有哪些

sql server安裝4個系統資料庫。它們分別是master資料庫 model資料庫 tempdb資料庫和msdb資料庫。這些資料庫是sql server的心臟和靈魂。另外,還安裝了兩個例項資料庫,分別是 northwind和pubs 系統資料庫4個 master資料庫 master資料庫控制sq...

如何查詢出資料庫中不存在的記錄

這兩天經常遇到一道題,即如何用一條語句在資料庫中查詢出不存在的記錄.注意,是一條語句哦.一般情況下,該題有個前提條件,必定有乙個欄位是按規律生成的,如小時記錄,一天24條記錄.或者是按照序號生成,如12345678等.我的思路是構造乙個偽表,然後用偽表進行關聯查詢.create table test...