成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

細數(shù)提高SQL查詢性能的十條戒律

數(shù)據(jù)庫 Oracle
本文是從Oracle數(shù)據(jù)庫的查詢性能開始談起,這十條戒律有助于大家提高SQL查詢性能,希望對大家有所幫助。

記錄詳細的需求文檔

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

 

[[12113]]

不要重新制造輪子

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

 

降低語句的復雜度

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

 

小心處理NULL

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

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

2. var 為null的時候, 在plsql中給var賦值, var := var + xxx;這種情況下var的值會一直是null的, 這一點需要特別注意, 我自己也犯過好幾次這個錯誤.

 

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

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

 

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

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

 

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

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

 

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

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

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

盡可能使用綁定變量

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

 

使用源碼控制工具

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

 

測試,測試,測試.

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

原文標題:如何提高SQL 查詢技能

鏈接:http://www.dbthink.com/?p=172

【編輯推薦】

  1. Oracle數(shù)據(jù)庫索引和SQL Server的闡述
  2. Oracle更改表空間大小的代碼與實際操作
  3. Oracle優(yōu)化器的3不同類型介紹
  4. Oracle優(yōu)化器三大種類的介紹
  5. Oracle優(yōu)化器二十六個參數(shù)

 

 

責任編輯:彭凡 來源: dbthink
相關推薦

2012-03-06 16:01:04

項目管理

2011-05-30 15:59:47

編程

2011-08-02 21:16:56

查詢SQL性能優(yōu)化

2011-07-15 17:21:46

網站程序

2009-04-08 10:51:59

SQL優(yōu)化經驗

2024-02-19 14:50:42

編碼原則軟件開發(fā)

2022-02-14 00:16:17

數(shù)據(jù)安全云安全

2021-02-04 11:55:45

Redis性能優(yōu)化

2012-05-15 01:38:18

編程編程技巧編程觀點

2025-05-21 00:10:00

2012-09-28 09:12:39

移動Web

2025-03-19 08:21:15

2025-05-15 20:55:38

2024-02-21 18:49:02

SQL數(shù)據(jù)數(shù)據(jù)集成

2012-08-02 09:14:13

編程戒律

2023-11-10 18:03:04

業(yè)務場景SQL

2009-01-15 09:57:00

2011-04-14 11:43:47

2022-09-09 16:27:09

微服務架構數(shù)據(jù)存儲

2024-08-19 09:04:50

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久国产视频| 亚洲精品18 | 亚洲一区 | 天堂三级| 一级片在线观看视频 | 国产精品毛片无码 | 国产精品91久久久久久 | 精品美女久久久 | 一区二区三区国产在线观看 | 欧美日韩亚 | 97碰碰碰 | 国产目拍亚洲精品99久久精品 | 欧美又大粗又爽又黄大片视频 | 一级在线免费观看 | 91av视频在线 | 国产精品久久久久永久免费观看 | 日本电影韩国电影免费观看 | 九九热免费看 | 欧美在线网站 | www.久久久久久久久久久 | 成人av免费网站 | 欧美精品在线一区二区三区 | 欧美综合在线视频 | 国产网站在线播放 | 日韩视频在线观看一区二区 | 久久久性色精品国产免费观看 | 一级一级毛片免费看 | 欧美日韩国产精品一区二区 | 亚洲91精品 | 欧美精品一区二区在线观看 | 国产一区二区在线播放 | 精品国产精品三级精品av网址 | 亚洲精品一区二区三区蜜桃久 | 中文字幕一区二区三区不卡 | 日韩成人 | 亚州综合在线 | www.伊人.com | 女人精96xxx免费网站p | 亚洲精品在线播放 | 国产在线小视频 | 亚欧精品一区 |