SQL中代替Like語句的另一種寫法
更新時間: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
這種方法理論上比上一種方法多了一個判斷語句,即>0, 但這個判斷過程是最快的, 我想信80%以上的運算都是花在查找字
符串及其它的運算上, 所以運用charindex函數(shù)也沒什么大不了. 用這種方法也有好處, 那就是對%,|等在不能直接用like
查找到的字符中可以直接在這charindex中運用, 如下:
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
這種方法理論上比上一種方法多了一個判斷語句,即>0, 但這個判斷過程是最快的, 我想信80%以上的運算都是花在查找字
符串及其它的運算上, 所以運用charindex函數(shù)也沒什么大不了. 用這種方法也有好處, 那就是對%,|等在不能直接用like
查找到的字符中可以直接在這charindex中運用, 如下:
use mydatabase
select * from table1 where charindex('%',username)>0
也可以寫成:
use mydatabase
select * from table1 where charindex(char(37),username)>0
ASCII的字符即為%
相關文章
數(shù)據(jù)分析數(shù)據(jù)庫ClickHouse在大數(shù)據(jù)領域應用實踐
這篇文章主要為大家介紹了數(shù)據(jù)分析數(shù)據(jù)庫ClickHouse在大數(shù)據(jù)領域應用實踐,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪2022-04-04程序員應該知道的數(shù)據(jù)庫設計的兩個誤區(qū)
在幾乎所有的企業(yè)級應用程序中,包括各種MIS、ERP、CRM等等,都會使用數(shù)據(jù)庫,這樣的好處是顯而易見的,很容易地實現(xiàn)了數(shù)據(jù)層和業(yè)務邏輯層的分離,而且對于性能的優(yōu)化也在一定程度上提供了便利。2010-07-07Linux下開啟和配置OpenGauss數(shù)據(jù)庫遠程連接的教程詳解
openGauss是一款開源關系型數(shù)據(jù)庫管理系統(tǒng),采用木蘭寬松許可證v2發(fā)行,本文主要為大家介紹了Linux系統(tǒng)中如何開啟和配置OpenGauss數(shù)據(jù)庫的遠程連接,需要的小伙伴可以參考下2023-12-12Navicat恢復數(shù)據(jù)庫連接及查詢sql的完美解決辦法
因為公司給電腦加域,導致使用新的用戶賬戶,原先的很多配置都失效了,這篇文章主要介紹了Navicat恢復數(shù)據(jù)庫連接及查詢sql的解決辦法,需要的朋友可以參考下2023-08-08MySQL與Redis如何保證數(shù)據(jù)一致性詳解
在高并發(fā)的業(yè)務場景下數(shù)據(jù)庫大多數(shù)情況都是用戶并發(fā)訪問最薄弱的環(huán)節(jié),所以就需要使用redis做一個緩沖操作,讓請求先訪問到redis,而不直接訪問Mysql等數(shù)據(jù)庫,這篇文章主要給大家介紹了關于MySQL與Redis如何保證數(shù)據(jù)一致性的相關資料,需要的朋友可以參考下2021-08-08