首頁 > 資料庫 > mysql教程 > MySQL的REGEXP和LIKE有什麼差別

MySQL的REGEXP和LIKE有什麼差別

WBOY
發布: 2023-05-30 13:58:06
轉載
2299 人瀏覽過

1、在匹配內容上的區別 
LIKE要求整個資料都要匹配,用Like,必須這個字段的所有內容滿足條件;

REGEXP只需要部分配對即可,只需要有任何一個片段滿足即可。

2、在匹配位置上的區別

LIKE 匹配整個列,如果被匹配的文字在列值中出現,LIKE 將不會找到它,相應的行也不會被返回(除非使用通配符);

REGEXP 在列值內進行匹配,如果被匹配的文字在列值中出現,REGEXP 將會找到它,相應的行將被傳回,且REGEXP 能匹配整個列值(與LIKE 相同的作用)。

3、SQL語句傳回資料差異

LIKE符合 :此SQL語句將不會傳回資料;

REGEXP符合 :此SQL語句會傳回一行資料;

4、速度差異

有一表,資料有10萬多條,其中某列資料範例如下:

100000-200000-300001
100000-200000-300002
100000-200001-300003
100000-200001-300004
100000-200002-300005
当查询数据中含有 200001 时,
用LIKE 时sql:colName LIKE'%200001 %' ,用时4秒左右
用正则时sql:colName REGEXP '^.*200001 -.*$',用时2秒左右
登入後複製

以上是MySQL的REGEXP和LIKE有什麼差別的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:yisu.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板