SQL中代替Like語句的另一種寫法
更新時(shí)間:2006年12月23日 00:00:00 作者:
比如查找用戶名包含有"c"的所有用戶, 可以用
use mydatabase
select * from table1 where username like'%c%"
下面是完成上面功能的另一種寫法:
use mydatabase
select * from table1 where charindex('c',username)>0
這種方法理論上比上一種方法多了一個(gè)判斷語句,即>0, 但這個(gè)判斷過程是最快的, 我想信80%以上的運(yùn)算都是花在查找字
符串及其它的運(yùn)算上, 所以運(yùn)用charindex函數(shù)也沒什么大不了. 用這種方法也有好處, 那就是對%,|等在不能直接用like
查找到的字符中可以直接在這charindex中運(yùn)用, 如下:
use mydatabase
select * from table1 where charindex('%',username)>0
也可以寫成:
use mydatabase
select * from table1 where charindex(char(37),username)>0
ASCII的字符即為%
use mydatabase
select * from table1 where username like'%c%"
下面是完成上面功能的另一種寫法:
use mydatabase
select * from table1 where charindex('c',username)>0
這種方法理論上比上一種方法多了一個(gè)判斷語句,即>0, 但這個(gè)判斷過程是最快的, 我想信80%以上的運(yùn)算都是花在查找字
符串及其它的運(yùn)算上, 所以運(yùn)用charindex函數(shù)也沒什么大不了. 用這種方法也有好處, 那就是對%,|等在不能直接用like
查找到的字符中可以直接在這charindex中運(yùn)用, 如下:
use mydatabase
select * from table1 where charindex('%',username)>0
也可以寫成:
use mydatabase
select * from table1 where charindex(char(37),username)>0
ASCII的字符即為%
相關(guān)文章
數(shù)據(jù)庫刪除完全重復(fù)和部分關(guān)鍵字段重復(fù)的記錄
重復(fù)記錄分為兩種,第一種是完全重復(fù)的記錄,也就是所有字段均重復(fù)的記錄,第二種是部分關(guān)鍵字段重復(fù)的記錄,例如Name字段重復(fù),而其它字段不一定重復(fù)或都重復(fù)。2008-05-05
最新Navicat?16??Mac版安裝永久激活教程(親測有效)
這篇文章主要介紹了最新Navicat?16??Mac版安裝永久激活教程(親測有效),本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對Navicat?16?永久激活教程感興趣的朋友一起看看吧2022-08-08
未在本地計(jì)算機(jī)上注冊“Microsoft.Jet.OleDb.4.0”提供程序錯(cuò)誤的解決方法
未在本地計(jì)算機(jī)上注冊“Microsoft.Jet.OleDb.4.0”提供程序錯(cuò)誤的解決方法,需要的朋友可以參考下。2011-08-08
識(shí)別 MS SQL 各個(gè)版本的版本號(hào)的方法
識(shí)別 MS SQL 各個(gè)版本的版本號(hào)的方法...2007-10-10

