最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

mysql模糊查詢like和regexp小結(jié)

 更新時(shí)間:2014年09月11日 10:15:58   投稿:hebedich  
在mysql中實(shí)現(xiàn)模糊查詢有兩種方法一種是LIKE/NOT LIKE,另一種是REGEXP/NOT REGEXP方法,下面我來給大家介紹它們的用法,希望此教程對(duì)各位同學(xué)會(huì)有所幫助。

在mysql中實(shí)現(xiàn)模糊查詢的有l(wèi)ike和regexp。

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

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

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

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

like是對(duì)這個(gè)字段里面的所有字符串進(jìn)行比較,效率并不高。

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

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

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

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

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

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語(yǔ)句可以寫作:

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

相關(guān)文章

最新評(píng)論

揭阳市| 阿图什市| 林芝县| 宝应县| 东源县| 西藏| 洪泽县| 吴旗县| 大余县| 北京市| 新郑市| 景洪市| 丹江口市| 岑巩县| 阿坝县| 鄂温| 绥滨县| 高碑店市| 九龙县| 泸州市| 兖州市| 昌都县| 吴忠市| 密云县| 饶河县| 江华| 历史| 乌什县| 双峰县| 七台河市| 德惠市| 忻城县| 乐业县| 宁晋县| 常熟市| 嫩江县| 吐鲁番市| 科技| 陆良县| 长垣县| 新化县|