解讀4個編寫SQL語句需要注意的常識_Mssql數據庫教程
教程Tag:暫無Tag,歡迎添加,賺取U幣!
推薦:談值得收藏的SQL時間函數--日期轉換參數 select CONVERT(varchar, getdate(), 120 )2004-09-12 11:06:08 select replace(replace(replace(CONVERT(varchar, getdate(), 120 ),'-',''),' ',''),':','')20040912110608 select CONVERT(varchar(12) , getdate(), 111 )2004/09/12 selec
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的條件
優化器一般會使用全表掃描
分享:怎樣從多個位置截取字符串的SQL語句知:字段A=’F:\photo\WinterLeaves.jpg’ 要求:分段截取每段字符[字段A不能為TEXT類型,否則報錯] 解決方法: ---截取字符串A的第一個\左邊的字符串 selectleft(A,charindex(’/’,A)-1) 輸出結果:F: ---截取\中間的字符串 selectleft(stuff(A,1,charindex(’/
相關Mssql數據庫教程:
- sql 語句練習與答案
- 深入C++ string.find()函數的用法總結
- SQL Server中刪除重復數據的幾個方法
- sql刪除重復數據的詳細方法
- SQL SERVER 2000安裝教程圖文詳解
- 使用sql server management studio 2008 無法查看數據庫,提示 無法為該請求檢索數據 錯誤916解決方法
- SQLServer日志清空語句(sql2000,sql2005,sql2008)
- Sql Server 2008完全卸載方法(其他版本類似)
- sql server 2008 不允許保存更改,您所做的更改要求刪除并重新創建以下表
- SQL Server 2008 清空刪除日志文件(瞬間日志變幾M)
- Win7系統安裝MySQL5.5.21圖解教程
- 將DataTable作為存儲過程參數的用法實例詳解
- 相關鏈接:
- 教程說明:
Mssql數據庫教程-解讀4個編寫SQL語句需要注意的常識
。