
drop table if exists user
CREATE TABLE `user` (
`id` int(11) unsigned NOT NULL auto_increment,
`txt` text NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8
insert into user (txt) values ('张三'),('小张'),('张'),('李'),('李四'),('小李')
select * from user where txt like '张%'
select * from user where txt like '李%'
MySQL中的模式匹配(标准SQL匹配和正则表达式匹配)1. 使用LIKE和NOT LIKE比较 *** 作符(注意不能使用=或!=)
2. 模式默认是忽略大小写的;
3. 允许使用”_”匹配任何单个字符,”%”匹配任意数目字符(包括零字符);
MySQL还提供象UNIX实用程序的扩展正则表达式模式匹配的格式:
1. 使用REGEXP和NOT REGEXP *** 作符(或RLIKE和NOT RLIKE,他们是同义词);
2. REGEXP模式匹配与被匹配字符的任何地方匹配,则匹配成功(即只要被匹配字符包含或者可以等于所定义的模式,就匹配成功);
不同于LIKE模式匹配,只有和整个值匹配,才匹配成功(即只有被匹配字符完全和所定义的模式匹配,才匹配成功)
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)