SQL的like操作符


在where子句中,like操作符我們經常會用到,比如,當我們只知道一個人的名字,卻不知道他的姓,去查詢的他的相關信息時,就需要用到like操作符。

在like操作符,常用到的通配符是"%",在搜索串中,%表示任何字符出現的任意次數

以部門表為例

查詢部門名稱中以"es"結尾的部門編號,和部門名稱。那么sql就是:

select * from departments where dept_name like '%es';

那么查詢結果為:

如果查詢部門名稱中含有"es"字符的部門編號,和部門名稱。那么sql就是

select * from departments where dept_name like '%es%';

查詢結果為

以上兩個例子區別在於,一個是以"es"結尾,那么,因為"%"匹配任意數量字符,所以在"es"前面添加上"%"即可。另一個是包含"es"就要考慮到"es"出現的位置可能在最前面,中間,和末尾,三種情況,所以在"es"前面和后面都需要添加上"%"。

 

另一個通配符就是下划線"_",下划線"_"的用途和"%"一樣,但是下划線"_"只能匹配單個字符而不是多個字符

比如查詢以"es"結尾的五個字母組成的部門名稱的部門信息

那么sql就需要寫成:

select * from departments where dept_name like '___es';

需要寫三個下划線"_",查詢結果為:

通配符的使用還是很方便的,但是這種方便性是以犧牲性能為代價的,使用通配符查詢時要比准確查詢花費的時間更長,所以不要過度使用通配符。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM