SQL中代替Like語句的另一種寫法

來源:互聯網
上載者:User

比如尋找使用者名稱包含有"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的字元即為%

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.