提到Like語句大家都很熟悉,比如查找用戶名包含有"c"的所有用戶, 我們可以用use mydatabase select * from table1 where username like'%c%"
以下是完成上面功能的另一種寫法:use mydatabase
select * from table1 where charindex('c',username)>0
這種方法理論上比上一種方法多了一個判斷語句,即>0, 但這個判斷過程是最快的, 我相信80%以上的運算都是花在查找字符串及其它的運算上, 所以運用charindex函數也沒什麼大不了。用這種方法也有好處, 那就是對%,|等在不能直接用like 查找到的字符中可以直接在這charindex中運用, 如下:
use mydatabase
select * from table1 where charindex('%',username)>0
大家還可以寫成:
use mydatabase
select * from table1 where charindex(char(37),username)>0
ASCII的字符即為%