本文實例講述了SqlServer2016模糊匹配的三種方式及效率問題。分享給大家供大家參考,具體如下:
數(shù)據(jù)庫是Sqlserver 2016版
現(xiàn)在業(yè)務(wù)需求是:要查詢出企業(yè)名稱為以下幾個的,XXX,XXXX等等:
第一種方式:like '%XXX%' OR like '%XXXX%'
select cName from tAccountAuditing where
cName
like '%測試moa000154%'
OR
cName
like '%測試集團(tuán)上海事業(yè)部%'
and activeAuditingCodeFromJdjr = 1
第二種方式:PATINDEX('%XXX%',cName) > 0
select cName from tAccountAuditing where
(
PATINDEX('%測試moa000154%',cName) > 0
OR
PATINDEX('%測試集團(tuán)上海事業(yè)部%',cName) > 0
) and activeAuditingCodeFromJdjr = 1
第三種方式:CHATINDEX('XXX',cName) > 0
這里不要百分號的啊
select cName from tAccountAuditing where
(
CHARINDEX('測試moa000154',cName) > 0
OR
CHARINDEX('測試集團(tuán)上海事業(yè)部',cName) > 0
) and activeAuditingCodeFromJdjr = 1
效率上的話,后兩種比like都要好~
更多關(guān)于SQL Server相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《SQL Server查詢操作技巧大全》、《SQL Server日期與時間操作技巧總結(jié)》、《SQL Server存儲過程技巧大全》、《SQL Server索引操作技巧大全》及《SQL Server常用函數(shù)匯總》
希望本文所述對大家SQL Server數(shù)據(jù)庫程序設(shè)計有所幫助。
您可能感興趣的文章:- SQLServer中使用擴(kuò)展事件獲取Session級別的等待信息及SQLServer 2016中Session級別等待信息的增強(qiáng)
- sqlserver 模糊查詢常用方法
- SqlServer使用 case when 解決多條件模糊查詢問題
- SqlServer中模糊查詢對于特殊字符的處理方法
- MSSQL Server 查詢優(yōu)化方法 整理
- sqlserver 中charindex/patindex/like 的比較
- SqlServer參數(shù)化查詢之where in和like實現(xiàn)之xml和DataTable傳參介紹
- SqlServer參數(shù)化查詢之where in和like實現(xiàn)詳解