国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當(dāng)前位置: 首頁 - 科技 - 知識百科 - 正文

SQL查詢性能提高的10個技巧

來源:懂視網(wǎng) 責(zé)編:小采 時間:2020-11-09 07:29:08
文檔

SQL查詢性能提高的10個技巧

SQL查詢性能提高的10個技巧:記錄詳細(xì)的需求文檔 在寫SQL之前必須弄清楚需求, 具體要取什么數(shù)據(jù), 有些什么具體的約束條件, 在數(shù)據(jù)倉庫環(huán)境中還可以考慮補上這個需求具體對應(yīng)哪些報表, 對應(yīng)的基礎(chǔ)表如何. 到開發(fā)環(huán)境的話, 可以考慮加上這條SQL服務(wù)于哪些業(yè)務(wù)(頁面),調(diào)用頻率如何. 不要重
推薦度:
導(dǎo)讀SQL查詢性能提高的10個技巧:記錄詳細(xì)的需求文檔 在寫SQL之前必須弄清楚需求, 具體要取什么數(shù)據(jù), 有些什么具體的約束條件, 在數(shù)據(jù)倉庫環(huán)境中還可以考慮補上這個需求具體對應(yīng)哪些報表, 對應(yīng)的基礎(chǔ)表如何. 到開發(fā)環(huán)境的話, 可以考慮加上這條SQL服務(wù)于哪些業(yè)務(wù)(頁面),調(diào)用頻率如何. 不要重

記錄詳細(xì)的需求文檔 在寫SQL之前必須弄清楚需求, 具體要取什么數(shù)據(jù), 有些什么具體的約束條件, 在數(shù)據(jù)倉庫環(huán)境中還可以考慮補上這個需求具體對應(yīng)哪些報表, 對應(yīng)的基礎(chǔ)表如何. 到開發(fā)環(huán)境的話, 可以考慮加上這條SQL服務(wù)于哪些業(yè)務(wù)(頁面),調(diào)用頻率如何. 不要重

記錄詳細(xì)的需求文檔

在寫SQL之前必須弄清楚需求, 具體要取什么數(shù)據(jù), 有些什么具體的約束條件, 在數(shù)據(jù)倉庫環(huán)境中還可以考慮補上這個需求具體對應(yīng)哪些報表, 對應(yīng)的基礎(chǔ)表如何. 到開發(fā)環(huán)境的話, 可以考慮加上這條SQL服務(wù)于哪些業(yè)務(wù)(頁面),調(diào)用頻率如何.


不要重新制造輪子

對于一些已經(jīng)比較成熟的解決方案,有比較現(xiàn)成的例子的SQL,要善于利用已有SQL,已有模板.

降低語句的復(fù)雜度

有些同學(xué)可能比較喜歡使用比較炫的技術(shù),比較炫的SQL來解決問題. 但是要切記一點, 使用過于復(fù)雜過于新的技術(shù), 如果不能在性能(以及其他方面)帶來好處的話, 只會使得這條SQL難于維護, 使得其他相關(guān)人員難于理解.

小心處理NULL

NULL在Oracle數(shù)據(jù)庫中是一個非常特別的值, 它不等于任何值, 所以如果你的SQL返回的值數(shù)量偏少,或者根本不對很可能就是使用NULL出現(xiàn)了問題..常見的情況是:

1. 查詢的時候直接使用條件 colx = xxx,而這個colx里面是有NULL值的, 這種情況下查詢的返回結(jié)果是不會包含NULL值對應(yīng)的記錄的, 如果要查詢出NULL對應(yīng)的記錄, 需要使用 colx is null (is not null).

2. var 為null的時候, 在plsql中給var賦值, var := var + xxx;這種情況下var的值會一直是null的, 這一點需要特別注意。

自己核對數(shù)據(jù)類型

在where條件里面要仔細(xì)地核對數(shù)據(jù)類型, 由于隱形轉(zhuǎn)換的問題, 在數(shù)據(jù)類型錯誤的時候, Oracle無法正確使用索引, 可能會導(dǎo)致SQL運行非常慢.

小心處理重復(fù)數(shù)據(jù)

在需求明確的情況下, 如果你不在乎是否出現(xiàn)重復(fù)記錄, 或者明確知道不會出現(xiàn)重復(fù)數(shù)據(jù)的情況下, 盡量使用Union All而不是Union進行查詢, Union會涉及到昂貴的排序操作.

避免不必要的優(yōu)化操作

SQL的性能調(diào)優(yōu)可能非常有趣非常帶勁, 但是很多時候調(diào)優(yōu)可能意義不大, 比如對于只會使用一次的查詢, 你可能很少在乎是1秒鐘結(jié)束還是2秒鐘結(jié)束..

不過一些基本的優(yōu)化規(guī)則還是要用的:

只查詢你需要的字段, 而不要所有的查詢都是用select *來進行.

在通過索引來查詢更合適的時候, 盡量在查詢條件中指定有索引的字段來查詢. (在返回的記錄條數(shù)很少的時候, 使用索引一般都能更加快速的得到查詢結(jié)果.不要可以避免使用表連接. 關(guān)系數(shù)據(jù)庫就是為了表連接而設(shè)計的.

盡可能使用綁定變量

在開發(fā)環(huán)境使用的SQL語句盡量使用綁定變量, 這樣可以大大緩解Oracle數(shù)據(jù)庫解析SQL的消耗, 也可以大大提高數(shù)據(jù)庫的可擴展性.

使用源碼控制工具

最好使用CVS/SVN一類的源碼控制工具來管理你的SQL/PLSQL代碼, 這對于后期的維護有非常大的幫助, 也有助于其他人更好的理解你最初寫這條SQL的意圖.

測試,測試,測試.

在SQL寫好之后, 要深入的進行測試, 以確保其正常運行



以上轉(zhuǎn)至網(wǎng)友

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

SQL查詢性能提高的10個技巧

SQL查詢性能提高的10個技巧:記錄詳細(xì)的需求文檔 在寫SQL之前必須弄清楚需求, 具體要取什么數(shù)據(jù), 有些什么具體的約束條件, 在數(shù)據(jù)倉庫環(huán)境中還可以考慮補上這個需求具體對應(yīng)哪些報表, 對應(yīng)的基礎(chǔ)表如何. 到開發(fā)環(huán)境的話, 可以考慮加上這條SQL服務(wù)于哪些業(yè)務(wù)(頁面),調(diào)用頻率如何. 不要重
推薦度:
標(biāo)簽: 查詢 記錄 提升
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 国产成人青青热久免费精品 | 精品一区 二区三区免费毛片 | 91久久精品国产亚洲 | 亚洲一区二区三区成人 | 中文 字幕 高清 在线 | 国产人成久久久精品 | 日韩欧美亚洲 | 国产肉丝 | 亚洲高清视频在线 | 精品一区二区三区四区 | 中文字幕在线不卡视频 | 欧美激情二区 | 日韩美女一区二区三区 | 91视频高清| 成人毛片免费免费 | www.亚洲一区 | 中文字幕日韩欧美 | 国产亚洲欧美另类一区二区三区 | 久久久久久国产精品视频 | 国产一级二级三级 | 久久精品123 | 国产一级高清视频免费看 | 亚洲国产欧美自拍 | 亚洲欧美日韩色图 | 欧美日韩国产va另类 | 国产日韩亚洲欧美 | 日韩第3页 | 在线看精品 | 精品国产欧美一区二区三区成人 | 国产日韩一区二区三区在线播放 | 国产一区二区三区在线视频 | 国产最新网址 | 亚洲欧美天堂网 | 在线观看精品国产 | 国内精品一区二区 | 欧美日韩一二三区 | 国产成人精品视频一区二区不卡 | 久久亚洲一级α片 | 欧美精品小视频 | 亚洲视频欧美视频 | 欧洲高清一区二区三区试看 |