程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> SqlServer2005 >> sqlserver 中charindex/patindex/like 的比較

sqlserver 中charindex/patindex/like 的比較

編輯:SqlServer2005
一、測試環境:

1。數據庫:Sql Server 2008

2。測試表:15000記錄,char類型主鍵,無其他索引

3。測試字段:ntext 類型,最大數據長度12000

二、測試語句:

1。select * from ProductTemp where ProductDesc like '%192.168.70.236%'

2。select * from ProductTemp where charindex('192.168.70.236',ProductDesc)>0

3。select * from ProductTemp where patindex('%192.168.70.236%',ProductDesc)>0

三、測試結果:

1。效率測試結果: charindex > like > patindex ,效率差大概20%

2。適用性測試結果:

1)charindex對於檢索結果最大位移有要求,經測試,Sql2008中的ntext字段,位移不能超過3987,否則返回0;

2)patindex 和 like 無位移限制;

3)patindex 支持匹配表達式,可以應用正則;

4)like可以用'%oldstring%'進行模糊匹配;

5)charindex只能匹配固定字符串
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved