国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

mysql模糊查詢like和regexp小結

2024-07-24 13:06:18
字體:
來源:轉載
供稿:網友
在mysql中實現模糊查詢有兩種方法一種是LIKE/NOT LIKE,另一種是REGEXP/NOT REGEXP方法,下面我來給大家介紹它們的用法,希望此教程對各位同學會有所幫助。
 
 

在mysql中實現模糊查詢的有like和regexp。

------------------------

like的用法許多人都是知道的,最為常用的情況就是select * from a where name like '%a%';

其中'%'代表的是任意個字符,它的效果像是正則表達式里的'*',它有幾種用法:'a%','%a%','%a',分別表示以什么開頭,存在什么以及以什么結尾。

另外也可以使用'_'字符,這表示一個任意字符。效果類似正則表達式里面的'.'。

like是對這個字段里面的所有字符串進行比較,效率并不高。

------------------------

regexp就是mysql的正則匹配操作符.

regexp的用法如:select * from a where name regexp 'a';其寫法可以參照正則表達式.像是'*','[a-z]','a|b','cc$','^b{2}$'。

------------------------

在hibernate中沒有提供regexp的直接使用功能,但是可以通過添加自定義函數的方式實現。

public class MySQL5DialectRegexp extends org.hibernate.dialect.MySQLInnoDBDialect{  public MySQL5DialectRegexp() {    super();    registerFunction( "regexp", new SQLFunctionTemplate(Hibernate.BOOLEAN, "?1 REGEXP ?2") );  }}


其中org.hibernate.dialect.MySQLInnoDBDialect是hibernate配置信息hibernate.dialect的值,之后可以使用MySQL5DialectRegexp的路徑代替.

HQL語句可以寫作:

from A where regexp(a,'a|b|c')=1;


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 宁乡县| 庆城县| 图们市| 霍城县| 竹溪县| 澎湖县| 米脂县| 巴青县| 兴和县| 新安县| 岑巩县| 应用必备| 安化县| 石屏县| 英德市| 沙洋县| 巴楚县| 江孜县| 黔西县| 炎陵县| 西盟| 那坡县| 深泽县| 平江县| 日喀则市| 西乌珠穆沁旗| 新蔡县| 犍为县| 西林县| 揭东县| 都兰县| 皮山县| 汕尾市| 临湘市| 河曲县| 兴海县| 郯城县| 镇康县| 太保市| 常熟市| 平昌县|