Oracle開發誤區(here)
1.避免對列進行運算
在編寫SQL時,要儘量避免對列進行運算,要善於通過等價改寫消除對列運算的SQL,
這樣可以避免索引無法使用,從而提高語句效率。點選(此處)摺疊或開啟
-
DROP TABLE ljb_test;
-
CREATE TABLE ljb_test(ID NUMBER, log_time DATE);
-
INSERT INTO ljb_test SELECT ROWNUM, SYSDATE - ROWNUM FROM dual CONNECT BY ROWNUM <= 1000000;
-
CREATE INDEX idx_ljbtest_logtime ON ljb_test(log_time);
-
-
--下面的查詢無法使用索引
-
SELECT * FROM ljb_test WHERE TRUNC(log_time) = to_date(\'2013-12-25\', \'YYYY-MM-DD\');
-
-
ID LOG_TIME
-
---------- ---------
- 6 25-DEC-13
點選(此處)摺疊或開啟
-
--使用索引, 邏輯讀顯著下降
-
SELECT * FROM ljb_test
-
WHERE log_time >= to_date(\'2013-12-25\', \'YYYY-MM-DD\')
-
AND log_time < to_date(\'2013-12-25\', \'YYYY-MM-DD\') + 1;
-
-
ID LOG_TIME
-
---------- ---------
- 6 25-DEC-13
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/17013648/viewspace-1070877/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 自學Java開發有哪些誤區?Java
- 網站設計和開發的誤區網站
- 5 個常見的 Rails 開發誤區AI
- Oracle效能調整的誤區Oracle
- 關於SQL開發規範中的那些誤區!SQL
- 遠端教育系統開發中的誤區
- 開發F2P遊戲需避開的5個誤區遊戲
- Android開發人員應避免的10個誤區Android
- Web前端開發應該避免的幾個思維誤區Web前端
- Mac OS搭建Python開發環境的幾個誤區MacPython開發環境
- 當前Java軟體開發中幾種認識誤區Java
- Right here waitingAI
- 常見的5個區塊鏈應用開發錯誤理解區塊鏈
- Java開發人員需要注意的五大Docker誤區JavaDocker
- 萬嶽教育系統-線上教育直播原始碼的開發誤區原始碼
- oracle開發Oracle
- 從選域名到SEO,盤點Web開發最常見的5個誤區Web
- iOS 開發錯誤集錦iOS
- 開發中遇到的錯誤
- 利用HERE Document攜帶C原始碼原始碼
- 會開發和懂開發的區別
- JavaScript 誤區JavaScript
- 瀑布式開發和敏捷開發的區別敏捷
- Java開發和Android開發的區別JavaAndroid
- 原生開發、H5開發和混合開發的區別H5
- Android開發錯誤集錦Android
- 前端開發--如何快速定位錯誤前端
- JPA 開發中遇到的錯誤
- 開發時犯得小錯誤
- 區塊鏈技術開發 區塊鏈錢包交易所開發區塊鏈
- 關於提高Oracle資料庫效能的四個誤區Oracle資料庫
- Promise 的誤區Promise
- Java 已死 —— 5 個誤區讓開發人員至今仍認為 Java 很重要Java
- Oracle開發學習Oracle
- oracle開發規範Oracle
- Oracle開發路線Oracle
- 開發APP和開發微信小程式的區別?APP微信小程式
- 區塊鏈開發:公鏈開發那些事兒區塊鏈