程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> 優化Sql語句注意

優化Sql語句注意

編輯:關於SqlServer

1.盡量不要對列名進行函數處理。而是針對後面的值進行處理

例如where col1 = -5的效率比where -col1=5的效率要高

因為後面的條件對列值進行了計算。這樣的條件下優化器無法使用索引

而是要針對所有值進行計算之後才能再比較

2.盡量使用和數劇列一樣的值進行操作

如果col1是數值型

那麼例如where col1 = 2和where col1= ‘2′

則前者效率更高

因為比較字符和數值型的時候

引擎需要把兩者都轉化成雙精度然後進行比較

3.減少函數的使用

例如where col1 >= ‘2009-10-26′ and col1 <= ‘2009-10-27′

和where datediff(day,col1,getdate())=0

後者因為用到函數處理。所以col1上的索引又無法使用了

4.盡量不要用OR

一般對於OR的條件

優化器一般會使用全表掃描

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved