Oracle 計算欄位選擇性 判別列的索引潛力
今天面試被面試官問如何判斷列的可選性,以前我都是根據業務或同開發的同事溝通得出此列可選性。
也可能透過直接查詢的方式獲取,當然這個方法並不好。
這個問題確實是我以前忽略的。
以此轉載他人文章,解決這個問題。
select a.owner, a.table_name, a.column_name, b.num_rows, a.num_distinct Cardinality, round(a.num_distinct / decode(b.num_rows, 0, 1, b.num_rows) * 100, 2) selectivity from dba_tab_col_statistics a, dba_tables b where a.owner = b.owner and a.table_name = b.table_name and a.owner = upper('XXX') and a.table_name = upper('XXX') and a.column_name = upper('XXX'); -- 列值 selectivity 越接近100,選擇性越好,該列建立索引的潛力就越大 -- 原理是根據統計資訊檢視錶對應列的非重複記錄所佔的比例 --------------------- 作者:VincentQB 來源:CSDN 原文:https://blog.csdn.net/zwjzqqb/article/details/80713114 版權宣告:本文為博主原創文章,轉載請附上博文連結!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28572479/viewspace-2641110/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- PostgreSQL資料庫多列複合索引的欄位順序選擇原理SQL資料庫索引
- BeanUtils.copyProperties 選擇性賦值欄位Bean賦值
- oracle複合索引介紹(多欄位索引)Oracle索引
- 【TUNE_ORACLE】列出走了低選擇性索引的SQL參考Oracle索引SQL
- odoo欄位屬性列舉Odoo
- 位運算-設計資料庫表的多選狀態欄位資料庫
- arcgis欄位值計算(擷取A欄位前8位+按照順序計算8位)
- 選擇適合的型別判斷方式型別
- oracle fga審計(欄位級)Oracle
- Tableau的計算欄位、粒度、聚合、比率、表計算
- 【TUNE_ORACLE】列出可以建立組合索引的SQL(回表再過濾選擇性高的列)的SQL參考Oracle索引SQL
- Oracle 修改欄位型別和長度Oracle型別
- Dynamics CRM使用計算欄位自動計算兩個時間欄位的天數差
- MySQL-建立計算欄位MySql
- 【TUNE_ORACLE】Oracle索引設計思想(二)索引過濾列概述Oracle索引
- oracle中判斷欄位是否存在和新增表結構Oracle
- C#學習筆記-欄位、屬性、索引器C#筆記索引
- WPF繫結之道:為何選擇屬性而非欄位,提升靈活性與可控性
- Oracle-欄位的新增Oracle
- [提問交流]建立模型,新增屬性,欄位型別如何設定2位小數的欄位型別模型型別
- 【TUNE_ORACLE】Oracle索引設計思想(一)索引片和匹配列概述Oracle索引
- [20181020]lob欄位的索引段.txt索引
- 【TUNE_ORACLE】檢視每個列的選擇性和基數SQL參考OracleSQL
- 唯一索引和普通索引的選擇索引
- PHP陣列多個欄位分別排序PHP陣列排序
- PostgreSQL多值列的選擇性-Statistics,Cardinality,Selectivity,EstimateSQL
- Mysql時間欄位格式如何選擇,TIMESTAMP,DATETIME,INT?MySql
- QJsonObject判斷欄位是否存在JSONObject
- 計算兩列的相關性
- 邊緣計算軟體的選擇
- PG裡常見的欄位有索引但未使用索引的原因索引
- 2019年,雲端計算還有發展的潛力嗎?
- 如何在Oracle表中選擇主鍵列BWOracle
- oracle 修改表欄位的長度Oracle
- Elasticsearch 中為什麼選擇倒排索引而不選擇 B 樹索引Elasticsearch索引
- 怎麼給字串欄位加索引?字串索引
- [提問交流]onethink 模型欄位為什麼只有在新增時候 能選擇型別模型型別
- 【TUNE_ORACLE】Oracle索引設計思想(三)過濾因子概述與計算Oracle索引